新的dijit.form.Button在声明时保持自动点击

时间:2012-05-19 23:07:17

标签: javascript ajax dojo

我正在尝试以编程方式将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()仅在单击按钮时运行?

感谢。

1 个答案:

答案 0 :(得分:2)

只需show_namefunction() { show_name(); }

我的解释是你需要一个函数引用,而不是函数调用,它将返回值(可能没有)传回onClick。第一个选项在没有传递参数时有效,在第二个选项中你可以将任何内容传递给show_name()