如何从<;获取文件;输入类型=';文件'/&燃气轮机;(间接)使用javascript

如何从<;获取文件;输入类型=';文件'/&燃气轮机;(间接)使用javascript,javascript,html,Javascript,Html,我对非IE浏览器中的“输入标签”有问题 <input type="file" ... 在IE中,它工作得很好,当前返回我的文件; 在Chrome和Firefox中,加载“文件输入对话框”后,它不能返回任何文件。 歌剧和狩猎表演完全过时了 我可以用这个技巧解决它,但它基本上不好 _el_upload.click(); alert(); 我认为“callback”或“wait function”可以解决这个问题,但我无法处理它。如果您想设计文件输入元素的样式,请查看。如果要获取与文件输入元

我对非IE浏览器中的“输入标签”有问题

<input type="file" ...
在IE中,它工作得很好,当前返回我的文件; 在Chrome和Firefox中,加载“文件输入对话框”后,它不能返回任何文件。 歌剧和狩猎表演完全过时了

我可以用这个技巧解决它,但它基本上不好

_el_upload.click();
alert();

我认为“callback”或“wait function”可以解决这个问题,但我无法处理它。

如果您想设计文件输入元素的样式,请查看。如果要获取与文件输入元素关联的文件,必须执行以下操作:

inputElement.onchange = function(event) {
   var fileList = inputElement.files;
   //TODO do something with fileList.  
}
有关
文件列表
类型的更多信息,请参阅


请注意,上面的代码仅在支持文件API的浏览器中工作。例如,对于IE9和更早版本,您只能访问文件名。输入元素在非文件API浏览器中没有文件属性。

根据Ray Nicholus的回答:

inputElement.onchange = function(event) {
   var fileList = inputElement.files;
   //TODO do something with fileList.  
}
使用此功能也将起到以下作用:

inputElement.onchange = function(event) {
   var fileList = event.target.files;
   //TODO do something with fileList.  
}

以上答案已经足够了。除了
onChange
,如果使用拖放事件上载文件,您可以通过访问
eventags.dataTransfer.files

drop
事件中获取文件
您所说的
外观没有正确更改是什么意思
您试图做什么?您需要使用
元素的
onchange
事件
return\u el_upload.files
发生在您选择一个file.hi@RocketHazmat-thx作为回复之前:我正在尝试在我的CMS中创建自己的UI,我在设计上有问题;我不想在名为“文件上传”的按钮附近看到文本框,我正在测试“onchange”可能的重复。它也可能是“event.currentTarget.files”。
inputElement.onchange = function(event) {
   var fileList = inputElement.files;
   //TODO do something with fileList.  
}
inputElement.onchange = function(event) {
   var fileList = event.target.files;
   //TODO do something with fileList.  
}