如何使用<input type =“file”multiple =“”/>上的jquery访问每个路径/文件名

时间:2012-01-04 22:01:00

标签: jquery html5

目前我正在使用jQuery读取文件输入的值以读取文件扩展名并确定它是否是zip文件。 (我得到假路径并不重要,因为我只需要访问文件名。)当我在输入标签上有多个set并选择多个文件时.val()只抓取最后一个文件的路径。有没有办法迭代每一个?

1 个答案:

答案 0 :(得分:2)

HTML5 File API定义了一个FileList对象,可通过事件目标的files属性访问该对象。你可以这样做:

$("input[type='file']").change(function(e) {
    var fileList = e.target.files;
});

FileList对象包含File个对象的列表,name属性应该为您提供您正在寻找的名称:

console.log(fileList[0].name);

这里是working example

修改

以前,我展示了使用jQuery事件对象的originalEvent属性。这是不必要的,因为target属性存在于jQuery事件对象以及原始事件对象上。