我似乎无法为输入类型的文件进行onchange fire。如果我直接调用一个警报(比如onchange =“alert('a')”),它会触发,但如果我调用一个只有内部警报的用户定义函数,它就不会。见下文:
html:
<input type='file' value='C:\fakepath' onchange="previewFile()"/>
脚本:
function previewFile() {
alert("a");
}
答案 0 :(得分:1)
不工作的原因是使用JSFiddle的一种神器。在左侧面板中,您指定执行JavaScript onLoad
。您需要使用选项No wrap - in < head >
,这通常是您将JS放在真实HTML文件中的位置。更改该选项/检查此版本的小提琴,选项已更改。
答案 1 :(得分:1)
以下是您的问题的答案。使用jQuery并在我的代码中编写代码代替alert。
$("input[type=file]").bind("change", function() {
alert();
});