1)当方法没有参数时,赋值可以直接用onclick = 方法名
window.onload = function() { $('btnTest').onclick = test; } function test() { alert(val); }
2)当方法有参数时,用onclick = 方法名(参数)时就有错了,例如:
function show(value1,value2){ alert(value); } btn.onclick = show(value1.value2);
以上代码执行起来是有错误的,因为 show(value1.value2)这句,直接就执行了show方法,而没有正确把这个方法对象赋给btn.onclick事件.
如果我们改成这样
btn.onclick = show,参数又无法传递.
所以,需要在方法名前面加function():
function show(value1,value2){ alert(value1+","+value2); }
btn.onclick = function(){ show(certid.value,i); };
参考:
https://blog.csdn.net/gdjlc/article/details/8730145