37

<input type="file" id="basicUploadFile" multiple="multiple">この入力内のすべてのファイル名を取得したいと考えています。いくつかの例を見てきましたが、最初のファイルの名前しか取得しません。

$ ('#basicUploadFile').live ('change', function () {
    alert($ ('#basicUploadFile').val());
});

これどうやってするの?ありがとう。

4

5 に答える 5

88
var files = $('#basicUploadFile').prop("files")

filesFileList オブジェクトになります。

var names = $.map(files, function(val) { return val.name; });

namesは文字列(ファイル名)の配列です

FileAPI リファレンス
ファイルのプロパティ リファレンス

于 2012-05-22T13:38:28.273 に答える
12

jsFiddle デモ


FileList過度に使用する必要なく、コレクションとしてファイルにアクセスできますjQuery。およびオブジェクトを使用して入力から情報を取得する方法を示す簡単なjsFiddleを作成しました。ここにスニペットがあります:FileListFile

$('#basicUploadFile').live('change', function ()
{
    for (var i = 0; i < this.files.length; i++)
    {
        alert(this.files[i].name);
        alert(this.files.item(i).name); // alternatively
    }
});
于 2012-05-22T13:42:24.527 に答える
1

これを使用して、コンソールにすべてのファイル名を表示しました:

var input_file = $("#input_file");
input_file.on("change", function () {
     var files = input_file.prop("files")
     var names = $.map(files, function (val) { return val.name; });
     $.each(names, function (i, name) {
          console.log(name);
     });
});
于 2015-12-16T01:03:27.553 に答える