我有一个功能可以通过执行以下操作取消选中复选框:
$('[name = destination]').removeAttr('checked');
现在我希望在复选框上触发一个事件,就像我手动检查一样。是否有此事件?
我尝试过更改并点击。当我手动选中/取消选中复选框时,两者都有效,但是当这样做时,它们都不起作用。
答案 0 :(得分:2)
除了删除属性之外,为什么不将属性设置为false
$('[name = destination]').removeAttr('checked');
尝试
$('[name = destination]').prop('checked', false);
然后编写处理您正在寻找的此功能的事件
$('[name = destination]').on('click' , function(){
var $chk = $('[name="description"]');
if($chk.is(':checked')){
console.log('Checkbox is checked !!');
}
else{
console.log('Checkbox is now UNCHECKED !!');
}
});
$('[name = destination]').prop('checked', false).trigger('click');
您也可以使用.trigger()
方法
$('[name = destination]').trigger('click');
触发事件时要小心
如果您使用此检查状态
,则可能无法反映当前的媒体资源状态<强> Check Fiddle 强>
答案 1 :(得分:1)
当您更改change
属性时,您将需要手动触发click
或checked
事件(您应该通过prop
代替changeAttribute
,如另一张海报所述)
这只是意味着而不仅仅是
$('[name = destination]').removeAttr('checked');
DO
$('[name = destination]').removeAttr('checked');
$('[name = destination]').trigger('click');
答案 2 :(得分:0)
火灾事件 $('[name = destination]')。click();
当您手动点击复选框时,它将起作用