Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果复选框未通过单击更改,如何使用jQuery进行侦听?_Javascript_Jquery_Html_Checkbox - Fatal编程技术网

Javascript 如果复选框未通过单击更改,如何使用jQuery进行侦听?

Javascript 如果复选框未通过单击更改,如何使用jQuery进行侦听?,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,我有许多复选框可以使用另一个jQuery语句更改状态(选中,未选中): 要素: <input type="checkbox" id="select_a">select group A</input> <input type="checkbox" id="select_b">select group B</input> <input type="checkbox" id="mix">select mix</input> &l

我有许多复选框可以使用另一个jQuery语句更改状态(选中,未选中):

要素:

<input type="checkbox" id="select_a">select group A</input>
<input type="checkbox" id="select_b">select group B</input>
<input type="checkbox" id="mix">select mix</input>

<div id="group_a">
    <input type="checkbox" id="a_1">group A_1</input>
    <input type="checkbox" id="a_2">group A_2</input>
</div>
<div id="group_b">
    <input type="checkbox" id="b_1">group B_1</input>
    <input type="checkbox" id="b_2">group B_2</input>
</div>
我需要一种为组中的每个复选框设置侦听器的方法,我使用的方法如下:

jQuery("div input:checkbox").click(function(e){
    alert(e.target.id);
}); 
但这只适用于鼠标单击复选框的情况,我想知道一种方法,如果不是鼠标选中了复选框,那么可以为每个复选框触发一个事件(设置一个侦听器)

您可以使用事件处理程序

jQuery("div input:checkbox").change(function(){
     alert(this.id);
}); 

尝试
change
事件,对于顶部控件,也可以使用
radio
代替复选框,因为任何一个都会被选中:

$(函数(){
变量grp1=$(“#组a”).find('input[type=checkbox');
var grp2=$('#group_b').find('input[type=checkbox]);
$('input[name=grp]')。在('change',函数(e)上{
var id=this.id;
grp1.prop('checked','select_a'==id);
grp2.prop('checked','select_b'==id);
如果('mix'==id){
grp1.等式(0).道具('已检查',为真);
grp2.等式(0).道具('已检查',为真);
}
});
});

选择A组
选择B组
选择混合
A组1
A组2
B_1组
B组2

用键盘选中该框就像单击了它一样,并触发
.click()
处理程序。你到底想解决什么问题?
jQuery("div input:checkbox").change(function(){
     alert(this.id);
});