2013-02-06 44 views
2

当状态根据其他交互进行更改/修改时,是否存在复选框更改事件。我的意思不是通过点击文本框。是否有复选框更改状态的事件?

我试过这段代码:

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

...但你可以在this demo看到,如果我点击复选框我看到一个显示警报“复选框状态被改变了。”由更改事件触发的消息。但是,当使用按钮更改复选框状态时,不会触发相同的操作。

我错过了什么?

感谢任何帮助。

回答

1

问题是您正在修改DOM中的“已选中”属性,但未调用相同的事件处理程序。

在您的按钮事件单击您可以使用trigger做:

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

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

+1

精彩!!!有效。 –

1

不,通过JavaScript设置checked属性不会触发任何事件。如果您需要启动一个,则必须自己编写脚本或触发事件,然后再触发状态更改。

+0

感谢您的快速帮助。 –

相关问题