代码如下:
window.onload = function() {
oldonload && oldonload();
function test() {
alert("meh");
}
$('input[type=file]').change(test());
}
代码相当简单,test()
仅在 input[type=file]
更改时调用。但是,只要我的页面加载,就会调用 test()
。
这是怎么回事?如何仅在用户与输入元素交互时才执行函数?
最佳答案
您正在这一行调用该方法:
$('input[type=file]').change(test());
将其更改为:
$('input[type=file]').change(test);
如果你想传递一个参数给test
:
var myVar = 5;
$('input[type=file]').change(function () {
test(myVar);
});
关于javascript - 为什么我的 JS 函数执行的是 onload 而不是 onchange?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37154358/