如何强制使用文件上载字段

use*_*831 6 javascript validation jquery

你好,任何人都可以解决这个问题.

我的输入字段在代码下方,我正在对表单提交进行验证,即:

<input name="file[]" type="file" multiple="multiple">

<form name="bdmrequest" enctype="multipart/form-data" method="post"  action="<?php echo $_SERVER["PHP_SELF"];?>" onsubmit="return(validate());">
Run Code Online (Sandbox Code Playgroud)

我已在头文件中包含validate.js,我可以对文件上传以外的其他字段进行验证.我正在使用的验证码:

if(document.bdmrequest.file.value== "")
  {
   alert("Attachment Required");
   document.bdmrequest.file.focus();
    return false;
  } 
Run Code Online (Sandbox Code Playgroud)

js不支持我使用(document.bdmrequest.file [] .value =="")请建议我替代方案.我的输入类型的名称只能是file [].

Sha*_*k D 9

如果你需要纯Javascript:Demo Fiddle

function validate(){
    var inp = document.getElementById('upload');
    if(inp.files.length === 0){
        alert("Attachment Required");
        inp.focus();

        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

jQuery的:

function validate(){

    if($('#upload')[0].files.length === 0){
        alert("Attachment Required");
        $('#upload').focus();

        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)


Dil*_*mar 6

不需要JavaScript验证,您可以在输入类型中使用"required"属性....

 <input type="file" required="required">
Run Code Online (Sandbox Code Playgroud)


Ale*_*har 5

您可以检查值是否为空.

<input name="file[]" type="file" multiple="multiple" id="uploadField">
Run Code Online (Sandbox Code Playgroud)

然后在js中:

if($("#uploadField").val() != ""){
      //your success code here
}
Run Code Online (Sandbox Code Playgroud)