【问题标题】:HTML5: How to count the length of the files from the multiple-input fieldHTML5:如何计算多输入字段中文件的长度
【发布时间】:2011-08-21 15:40:06
【问题描述】:

如何使用 jquery 计算多输入字段中文件的长度?

alert($('#myForm input[type=file]').files.length);
<input type="file" multiple="multiple" name="file[]"/>

错误:

$("#myForm input[type=file]").files 未定义

它适用于普通 js,但我不想在我的输入字段中使用 ID。

alert(document.getElementById('file').files.length);

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

【问题讨论】:

    标签: jquery html file-upload


    【解决方案1】:

    尝试使用 .get 方法获取本机 DOM 元素:

    $('#myForm input[type=file]').get(0).files.length
    

    但是请注意,如果您有多个与您的选择器匹配的 DOM 元素,这将返回第一个,如果您没有,则显然会引发异常。

    【讨论】:

      【解决方案2】:

      这些答案都不适用于新的 html 5 多标签。所以如果你有类似的东西

      <input type="file" name="filesToUpload[]" id="filesToUpload" multiple="multiple" size="20" />
      

      注意多个标签,JQ 无法获取每个文件,只获取其中一个,我现在几乎尝试了所有可能的选择器,但无济于事。

      不过,如前所述,标准 Javascript 可以工作:

       alert(document.getElementById('filesToUpload').files.length);
      

      【讨论】:

      • 谢谢,这正是我想要的
      【解决方案3】:

      你可以试试 alert($('#myForm input[type=file]').length); 要么 alert($('#myForm input[type=file]').size());

      alert($('#file').size());alert($('#file').length);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-31
        • 1970-01-01
        相关资源
        最近更新 更多