6

我想读出我的多上传表单的文件名,但是 Javascript 只是添加了第一项。

<input name="upload[]" id="upload" type="file" multiple="multiple">
$("#upload").change(function() {
    $("#upload").each(function() {
        $("#upload_prev").append(this.value);
    });
});
4

1 回答 1

12

jQuery 还不能很好地支持多个文件上传字段。您最好的选择是恢复为原生 javascript 以访问该files集合。试试这个:

$("#upload").change(function() {
    var files = $(this)[0].files;
    for (var i = 0; i < files.length; i++) {
        $("#upload_prev").append(files[i].name);
    }
});

示例小提琴

此外,这里有几个问题与您的示例已修复,例如在重新选择并在新行上附加文件名时清除以前的文件列表:http: //jsfiddle.net/Vs5Hk/3/

于 2012-04-26T10:06:32.660 回答