我正在尝试在input[type=file]
更改事件中捕获文件:
这是我的HTML:
<input type="file" id="file-upload" name="file-upload">
这是我的JavaScript(使用jQuery):
$('#file-upload').bind("change", function(e){
var file = (e.srcElement || e.target).files[0];
console.log(e);
}
它完全可以正常使用图像,txt,doc,docx,xlsx等等,但不能使用zip文件。 当我尝试使用zip文件时,var文件包含一个类型属性为空。
你知道为什么以及如何得到它?
编辑1 我在Windows 7中使用Chrome浏览器。我的文件用7zip压缩。
编辑2 这是我得到的:
答案 0 :(得分:2)
您的代码有效。
我尝试了enapupe的小提琴并且它有效 http://jsfiddle.net/rvd6T/
$('#file-upload').bind("change", function(e){
var file = (e.srcElement || e.target).files[0];
console.log(file);
console.log(e);
});
我的控制台日志
您应该知道类型会有所不同。
有时它会是类型:&#34; application / x-zip-compressed&#34; 或&#34; application / zip&#34;
您最有可能只需将其基于文件名, * .zip(以zip和&amp;不区分大小写结束)
但仍然必须在服务器端检查它是否实际上是一个ZIP文件且无法解压