1

プログラムで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()が実行されるように修正する方法について、誰かが私に洞察を与えることができますか?

ありがとう。

4

1 に答える 1

2

show_name、またはだけを試してくださいfunction() { show_name(); }

私の説明は、戻り値 (おそらく何もない) を に戻す関数呼び出しではなく、関数参照が必要だということですonClick。最初のオプションは、引数が渡されない場合に機能します。2 番目のオプションでは、 に何でも渡すことができますshow_name()

于 2012-05-19T23:14:27.967 に答える