Javascript 选中父复选框不会选中子复选框
我正试图让jquery在选中父项时选中子项复选框,但是这并没有发生,而且我一辈子都搞不清楚这是怎么回事 代码: HTML:Javascript 选中父复选框不会选中子复选框,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,我正试图让jquery在选中父项时选中子项复选框,但是这并没有发生,而且我一辈子都搞不清楚这是怎么回事 代码: HTML: 下面是使用类而不是id HTML 代码正常工作,只需在JSFIDLE中添加jQuery。单击Frameworks&Extensions下的第一个下拉列表,然后选择如下所示的jQuery库: 不过,您的JS可能会更干净一些: $('#check-all-parent').click(function() { $("#check-all-child").prop("ch
下面是使用类而不是id HTML
代码正常工作,只需在JSFIDLE中添加jQuery。单击Frameworks&Extensions下的第一个下拉列表,然后选择如下所示的jQuery库: 不过,您的JS可能会更干净一些:
$('#check-all-parent').click(function() {
$("#check-all-child").prop("checked", $(this).prop("checked"));
});
不需要使用循环。在js中使用类而不是id和:
$.check-all-parent.onclick,函数{
$.check-all-child.propchecked,$this.propchecked;
};
你好
你好
你好
你好
HelLo2
如果您有父子复选框,请考虑使用嵌套列表:
你好 你好 你好 然后使用 $“复选框输入[type=checkbox]”。在“更改”上,函数{ 美元这个 .nextAll'ul' .查找“输入[类型=复选框]” .prop'checked',this.checked; }; $“复选框输入[type=checkbox]”。在“更改”上,函数{ 美元这个 .nextAll'ul' .查找“输入[类型=复选框]” .prop'checked',this.checked; }; 保险商实验室{ 列表样式:无; } 你好 你好 你好 你好 你好可能是因为ID必须是唯一的-所以在ID选择器上运行each循环没有多大意义。我希望是这样,即使把它们改成一个类也不行。嗯,是的,确实如此:我已经更新了所有内容,以反映你的建议。但是,有没有办法做到这一点,如果你选择了孩子,家长也会被选中?@zemaker,你从一开始就很好。您只需要将jQuery作为库添加到JSFIDLE中。见下面我的完整答案。这解决了它,这里是更新的正确答案。
<input type="checkbox" id="check-all-parent">hello
<br />
<input type="checkbox" id="check-all-child">hello2
<input type="checkbox" id="check-all-parent">hello
<br />
<input type="checkbox" class="check-all-child">hello2
$('#check-all-parent').click(function(event) {
if(this.checked) { // check select status
$('.check-all-child').each(function() { //loop through each checkbox
this.checked = true; //select all checkboxes with class "checkbox1"
});
}else{
$('.check-all-child').each(function() { //loop through each checkbox
this.checked = false; //deselect all checkboxes with class "checkbox1"
});
}
$('#check-all-parent').click(function() {
$("#check-all-child").prop("checked", $(this).prop("checked"));
});