0

したがって、次の JavaScript コードがあります。

<script type="text/javascript">
    function clearRadioButtons()
    {
        document.getElementById("radiobutton1").checked="";
        //etc for more radio buttons
    }
</script>

そして、私のフォームには、次のコードがあります。

<select name="whatever" onclick="clearRadioButtons()">
    <option onclick="clearRadioButtons()"></option>
    //and so on and so forth for <option> tags with values
</select>

select問題は、またはoption要素をクリックしても関数が実際に呼び出されないことです。ブラウザーのデバッガーで JS 関数を呼び出すと、正常に動作しますが、イベントはトリガーされません。ここで何が間違っていますか?かなり単純な気がしますが、誰が知っていますか。

ティア。

4

3 に答える 3

2

select要素でonchangeイベントを使用したいと思います。

function clearRadioButtons () {
    document.getElementById("radiobutton1").checked="";
    //etc for more radio buttons
}

window.onload = function () {
  //Event binding... 
  document.getElementById('whatever').onchange = clearRadioButtons;
};

<select id="whatever" name="whatever">
    <option></option>
    ...
</select>
于 2009-09-09T06:04:03.333 に答える
2

関数を次のように渡します

  clearRadioButtons().

角かっこにより、関数がすぐに実行されます。() なしで clearRadioButtons を使用する必要があります。このようにして、関数への参照を渡します。

于 2009-09-09T06:04:07.730 に答える
1

Ikkeが言ったことですが、checkedプロパティはDOMプロパティであり、変更する要素属性ではないため、""に設定しないでください。ブール値に設定してください。

于 2009-09-09T06:08:53.980 に答える