11

可能重复:
使用 javascript 从多文件上传控件中检索文件名

明白啦:

<input type="file" name="file1" multiple="multiple" />

在 jQuery 中使用它:

$("input[name=file1]").change(function() {
    $("input[name=file]").val($("input[name=file1]").val());
});

现在我的问题是:它只给出第一个选定的文件,我想拥有它们...怎么做?谢谢!

4

3 回答 3

35

尽管我在评论中链接到了一个可能的骗局,但它是一个纯 JavaScript 解决方案。如果你喜欢,这里是一个 jQuery 版本:jsFiddle 示例

$("input[name=file1]").change(function() {
    var names = [];
    for (var i = 0; i < $(this).get(0).files.length; ++i) {
        names.push($(this).get(0).files[i].name);
    }
    $("input[name=file]").val(names);
});​
于 2012-11-30T21:01:20.130 回答
4

您正在寻找“文件”属性,它返回一个文件列表:

var ele = document.getElementById($(this).attr('id'));
var result = ele.files;

这是它的小提琴

于 2012-11-30T21:07:53.997 回答
1

用于.length()获取文件数,然后使用 while 语句对所有文件执行相同操作,每次将计数增加 1 :)

于 2012-11-30T20:54:53.267 回答