我使用以下代码创建一个复选框。我希望复选框调用另一个函数。问题是,当创建复选框时,它会运行该功能,然后在单击时不会运行。
var cb = document.createElement('input');
cb.type = 'checkbox';
cb.onclick = newfunction();
cb.name = "done";
cb.value = "done";
theCell.appendChild(cb);
如何解决此问题,以便我可以创建一个复选框,然后让它在单击时运行功能。我使用ie8和Firefox 8.谢谢!
答案 0 :(得分:5)
您正在执行newFunction
而不是分配它。
删除()
:
cb.onclick = newfunction;
或者,如果您需要将参数传递给newFunction
,请将其包装在匿名函数中:
cb.onclick = function(){
newfunction("something");
};
答案 1 :(得分:0)
也许我错了,但你应该这样使用它:
cb.onclick = newfunction;//NO BRACKETS in this case
或者
cb.onclick = function() { newfunction(); }