2

他の相互作用に基づいて状態が変更/変更されたときにチェックボックスを変更するイベントはありますか?テキストボックスをクリックしないという意味です。

私はこのコードを試しました:

$('input[type="checkbox"]').bind('change',function(){
    alert('Checkbox state is changed.');
});

...しかし、このデモでわかるように、チェックボックスをクリックすると、「チェックボックスの状態が変更されました」というアラートが表示されます。変更イベントによってトリガーされたメッセージ。ただし、ボタンを使用してチェックボックスの状態を変更しても、同じことはトリガーされません。

私は何かが足りないのですか?

助けに感謝します。

4

2 に答える 2

1

いいえ、checkedJavaScriptを介して属性を設定しても、イベントは発生しません。1つを起動する必要がある場合は、自分でスクリプトを作成するか、clickイベントをトリガーする必要があります。これにより、状態変更が起動されます。

于 2013-02-06T08:15:35.207 に答える
1

問題は、属性「checked」を変更しているDOMが、同じイベントハンドラーが呼び出されていないことです。

ボタンイベントクリックでは、次を使用triggerして実行できます。

$('input[type="checkbox"]').trigger('change');   

http://jsfiddle.net/wmVtB/7/

于 2013-02-06T08:23:54.967 に答える