6

jQueryを使用してファイルアップロード入力にあるファイルの数をカウントするにはどうすればよいですか?

私はこれを試しましたが、常に1を返します。

$("body").on("change", ".create-album .custom-file-input .createAlbumFileUpload", function(){   

    var numFiles = $("input:file", this).length;
    alert(numFiles);
});

私のHTML:

<form enctype="multipart/form-data" class="createAlbumFileUpload">
    <input type="file" name="uploadFile[]" multiple="multiple"/>
</form>

同じことを尋ねる別の質問でこのjsFiddleを見つけましたが、なぜ私のものが機能していないのかわかりませんか?

4

3 に答える 3

20

あなたが提供したフィドルには答えが含まれています。

var numFiles = $("input:file", this)[0].files.length;

http://jsfiddle.net/xvLAc/1/

于 2013-01-21T22:52:13.157 に答える
1

これで試すこともできますが、

Div で入力を取得し、ID を指定します。

var count =  $('#divPhoto').children().length; // You'll get the length in this.
于 2017-06-20T06:40:36.850 に答える
0

以下のコードとhttps://jsfiddle.net/vvz3a4qp/2/で簡単に確認できます。

HTML:

<form name="myForm" enctype="multipart/form-data">
<input type="text" name="name">
<input type="file" name="name1" >
<input type="file" name="name2" ><br><br>
<span id="total"></span>
</form>

JS:

 $("body").change(function(){
            alert($(":file").length);
            $("#total").html($("input[type=file]").length);
      });
于 2016-12-17T09:22:36.687 に答える