0

嗨,我正在尝试验证所有files具有相似名称的人

这些是我的输入元素

<form id="MyForm" onsubmit="return validate();">
<input type="file" name="File1"  />
<input type="file" name="File2" />
<input type="file" name="File3" />
</form>

我尝试的是

 function validate()
  {
   if($('input[name ^= "File"]').val()=='')
   {
     alert("The field is empty");
     return false;
   }
   }

这可能吗 ?或需要做喜欢$('input[type=file]').each(function () { ....}

4

3 回答 3

0

您尝试过的方法不起作用,因为 val() 方法返回匹配元素集中第一个元素的值。换句话说,它只会告诉你 File1 是否为空。您将需要遍历每个元素并检查是否有空值,或者使用简单的 if 语句。

于 2013-02-12T15:32:08.120 回答
0

您拥有的脚本将检查文件的第一个输入类型的条件。您需要使用一些循环结构来涉及所有三个字段。

于 2013-02-12T15:32:10.107 回答
0

这将起作用

$('input[name^=file]').each(function() {
    if($(this).val() === '')
    {
        alert('The field is empty');
        return false;
});

这是因为$('input[name^=file]')将返回多个元素,因此您需要遍历它们以检查单个元素

于 2013-02-12T15:31:35.400 回答