Eu seleciono o tipo de documento na opção de seleção e, em seguida, carrego o arquivo para validar no código
<form name="file_up_form" method="post" name="fileupload" enctype="multipart/form-data">
<div class="field_container1 thumbnail span3">
<label for="select_option">Select option here</label>
<select name="doc_type" id="select_option" style="width: 200px;" multiple>
<option value="1">Education</option>
<option value="2">Certification</option>
<option value="3">Client Paperwork</option>
<option value="4">Invoice</option>
</select>
</div>
<div class="field_container thumbnail span4">
<label for="file">Upload here: </label>
<input type="file" name="file" id="file">
<input class="btn btn-primary" type="submit" value="submit" name="submit">
</div>
<input type="hidden" name="check" value="1">
</form>
Aqui está o código de validação que estou usando até agora:
<script>
function validate()
{
if(document.fileupload.doc_type.value == "" && document.fileupload.doc_type.value == null)
{
alert( "Please provide your document!" );
return false;
}
if(document.fileupload.file.value == "" && document.fileupload.file.value == null)
{
alert( "Please provide your file!" );
return false;
}
return true;
}
</script>
Mude document.fileupload.doc_type.value
Para document.getElementById('file').value
. Além disso, você está verificando se o valor é ""
AND null
, não tenho certeza se isso é possível.
A menos que você precise verificar o formato do arquivo, etc., tente algo mais simples como este:
HTML
<form onsubmit="return(validate());" name="file_up_form" method="post" name="fileupload" enctype="multipart/form-data" >
<div class="field_container1 thumbnail span3">
<label for="select_option">Select option here</label>
<select name="doc_type" id="select_option" style="width: 200px;" multiple>
<option value="1">Education</option>
<option value="2">Certification</option>
<option value="3">Client Paperwork</option>
<option value="4">Invoice</option>
</select>
</div>
<div class="field_container thumbnail span4">
<label for="file">Upload here: </label>
<input type="file" name="file" id="file">
<input class="btn btn-primary" type="submit" value="submit" name="submit">
</div>
<input type="hidden" name="check" value="1">
</form>
JavaScript
<script>
function validate()
{
if(!document.getElementById('file').value)
{
alert( "Please provide your document!" );
}
return false;
}
</script>
Você também não deve retornar false
(não true
como faz atualmente) se nenhum arquivo for selecionado para impedir o envio do formulário? A tag <form>
Provavelmente deve incluir também um parâmetro action
.