Javascript appendChild复选框onclick没有运行

Zom*_*ian 1 html javascript

我使用以下代码创建一个复选框.我希望复选框调用另一个函数.问题是,当创建复选框时,它会运行该函数,然后在单击时不会运行.

var cb = document.createElement('input');
cb.type = 'checkbox';
cb.onclick = newfunction();
cb.name = "done";
cb.value = "done";
theCell.appendChild(cb);
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题,以便我可以创建一个复选框,然后让它在单击时运行函数.我使用的是ie8和Firefox 8.谢谢!

Jam*_*gne 5

您正在执行newFunction而不是分配它.

删除():

cb.onclick = newfunction;
Run Code Online (Sandbox Code Playgroud)

或者,如果需要传递参数newFunction,请将其包装在匿名函数中:

cb.onclick = function(){
    newfunction("something");
};
Run Code Online (Sandbox Code Playgroud)