0

を変更したときに私がチェックする必要がありますどの無線入力/ボタン変更するラジオボタンのイベントリスナーが発射されていない手動

document.getElementById('myId').checked = true; 

を使用しています。

それは正常に動作しますが、私はまた、イベントリスナー

document.getElementById('myId').onchange = function() { 
    console.log(this.checked); 
}; 

は、問題は、私はラジオ入力/ボタンをクリックしたときにイベントリスナーが起動されていることですが、私はcheckedを変更したときに、それが解雇されていません状態コード。 docs

から

答えて

0

コントロールが入力フォーカスを失って、その値がフォーカスを得て以来、変更されたときに変更イベントが発生します。このイベントは、INPUT、SELECT、およびTEXTAREAに有効です。素子。

したがって、プログラムで値を変更してもイベントは発生しません。したがって、プログラムで関数を呼び出すイベントを発生させることができます。

var ele = document.getElementById('myId'); 
ele.checked = true; 
ele.onchange.call(ele); 
関連する問題