Javascript 检查和取消检查不会自动进行
在我的代码Jquery中,我使用了:Javascript 检查和取消检查不会自动进行,javascript,jquery,web,checkbox,Javascript,Jquery,Web,Checkbox,在我的代码Jquery中,我使用了: $('#save').click(function (){ //Staff... $("input:checkbox").prop('checked', true); //Staff... } 另一方面,我有: $("input:checkbox").change(function(){ console.log('change ok'); }); 问题是,只有当我用鼠标检查时,才会检查取消选中,但当我单击save按钮(其代码
$('#save').click(function (){
//Staff...
$("input:checkbox").prop('checked', true);
//Staff...
}
另一方面,我有:
$("input:checkbox").change(function(){
console.log('change ok');
});
问题是,只有当我用鼠标检查时,才会检查取消选中,但当我单击save
按钮(其代码在上面)时,什么也没有发生。
有什么建议吗?thnks尝试此代码在
$(“输入:复选框”).prop('checked',true)
之后添加.trigger(“更改”)
,如下所示:
$("input:checkbox").prop('checked', true).trigger("change")
对给定事件类型执行附加到匹配元素的所有处理程序和行为的强制
注意:您在第一个代码末尾也忘记了一个)
。因此,更正的代码是:
$('#save').click(function (){
//Staff...
$("input:checkbox").prop('checked', true).trigger("change")
//Staff...
})
您可以看看这个小提琴:要自动触发事件,您需要在jQuery中使用
trigger()
示例:$(“输入:复选框”).prop('checked',true.).trigger('change')代码>
再次调用change
功能
$('#save').click(function (){
//Staff...
$("input:checkbox").prop('checked', true).change();
//Staff...
}); //<---- notice missing closing bracket()
$('#保存')。单击(函数(){
//职员。。。
$(“输入:复选框”).prop('checked',true).change();
//职员。。。
}); // 以编程方式更改属性不会自动调用更改事件,您必须手动调用它:
$("input:checkbox").prop('checked', true).trigger('change');
文档。是否检查了单击事件处理程序是否实际执行?这是事实,也是一个常见的陷阱。