2

私のJavascriptには次のコードがあります。ユーザーがラジオボタンをチェックしたときにアラートが発生するようにしたいのですが、代わりにページが読み込まれたときにアラートが発生し、ラジオボタンがチェックされても何も起こりません。なんで?

var myRadioButton = document.getElementById("myRadioButton");
myRadioButton.onchange=alert("Checked!");

ラジオボタンはチェックされていない状態から始まります。HTML では、次のようになります。

<div class="myRadioButton"><input type="radio" id="myRadioButton" name="radioButtons"  />&nbsp; This is my radio button 
</div>

onchangeページがロードされたときにイベントが発生したとJavascriptが考えるのはなぜですか? そして、実際にラジオボタンをチェックしたときに変更を認識しないのはなぜですか?

実際、どの要素を使用しonchangeても、ページの読み込み時にアラートがポップアップ表示され、ユーザーの操作はまったくありません。仕組みを誤解しonchangeていますか?

4

3 に答える 3

0

あなたのコードで

myradiobutton.onchange = alert('Checked')

実際にアラート関数を呼び出し、その戻り値をイベント ハンドラーとして割り当てました。

于 2013-05-13T06:31:17.173 に答える