我正在尝试使用特定id调用文件输入的click()方法,但函数调用返回undefined,基本上没有任何反应。我在这里复制了这种情况:http://jsfiddle.net/gkaG2/
这很简单:
HTML
<input id="hiddenFileInput" type="file" multiple="multiple" accept="image/*" >
的Javascript
document.getElementById('hiddenFileInput').click();
alert(document.getElementById('hiddenFileInput').click());
我尝试在元素上调用click()方法,但这不起作用。然后我调用alert()来打印函数调用时返回的内容。它返回“undefined”。我显然做错了什么,但到底是什么?
答案 0 :(得分:1)
您无法模拟点击input type=file
。这是禁止的。它仅适用于另一个onclick处理程序。用户必须单击某些内容才能打开对话框。
答案 1 :(得分:0)
这是一个安全问题。为防止浏览器为您选择文件,您无法模拟点击事件。请参阅:In JavaScript can I make a "click" event fire programmatically for a file input element?