仅发送非空的文件

时间:2014-03-10 14:53:07

标签: javascript html5 file send

我在表单上有三个输入文件:

<td><input type="file" name="image_url1"/></td>
<td><input type="file" name="image_url2"/></td>
<td><input type="file" name="image_url3"/></td>

我想发送(在帖子上)我们选择的文件(保留空的输入文件=&gt;不发送它们)。

我该怎么做?

1 个答案:

答案 0 :(得分:4)

您可以使用.length检查文件长度,并禁用空控件。这样他们就不会被张贴。

 $('input[type=file]').each(function () {
        if (this.value == "" || this.files.length == 0) {
            this.prop('disabled', true)
        }

    });

<强>更新 如果您不使用jQuery,可以通过简单的javascript执行此操作:

var myFiles = document.querySelectorAll("input[type=file]");
for(var i = 0; i<myFiles.length; i++)
{
   if(myFiles[i].value == "" || myFiles[i].files.length == 0)
   {
      myFiles[i].disabled = true;
   }  
}