我正在尝试以编程方式将dijit.form.Button插入到某些HTML中,我的代码如下所示:
row.innerHTML = '<td>Name:</td><td id="showname" />';
var showButton = new dijit.form.Button({
label: "Show name",
style: "float: right",
onClick: show_name(),
}, "showname")
但是每次刷新和更新页面时,它都会自动运行show_name(),这不是我想要的。任何人都可以给我一些关于为什么会发生这种情况的见解,以及如何修复它以便show_name()仅在单击按钮时运行?
感谢。
答案 0 :(得分:2)
只需show_name
或function() { show_name(); }
。
我的解释是你需要一个函数引用,而不是函数调用,它将返回值(可能没有)传回onClick
。第一个选项在没有传递参数时有效,在第二个选项中你可以将任何内容传递给show_name()
。