所有复选框都需要使用主复选框进行检查和取消选中

谁能帮我这个?

我有两个div 。 在一个div ,我有一个名为allcheck的复选框,而在另一个div ,我有一个名称为allcheck复选框。 如果我检查multiple ,则需要检查所有内容,如果取消选中multiple ,则应取消选中所有内容。 输入无线电是allcheck类。

 $('.inputradio').click(function(){ $("INPUT[name='outCheck']").each(function () { if (allCheck.checkbox== true) {//multi check is checked this.checked = true; } else { this.checked = false; } }); }); 

HTML

这是主复选框的div

 

这是针对儿童复选框:

 

即使检查了一个孩子,如果我们选中主复选框,也需要选择所有孩子。 我发布的代码只是反转支票。

试试这个 –

 $('input[name=allCheck]').click(function(){ $("INPUT[name='outCheck']").prop('checked', this.checked); }); 

这将在点击allCheck时切换所有名称为outCheckallCheck

见演示


UPDATE

在这里看到更新的演示

这按预期工作。 如果手动选中所有复选框,则主复选框也会更改,反之亦然,如果未选中一个子项,则主复选框也会取消选中。

此代码实现了选择和取消选中所有复选框的function

选择并取消选择

 $(".select-all-checkbox").click(function () { $('input:checkbox').prop('checked', this.checked); }); 

如果一个项目取消选择,则按钮CheckAll为UnCheck

 $(".mainCheckboxClass") .click( function() { if ($('input[class=mainCheckboxClass]:checked').length === $('input[class=mainCheckboxClass]').length) $('.select-all-checkbox').prop("checked", true); else $('.select-all-checkbox').prop("checked", false); }); 

试试这个:

 var $ch = $("input[name='outCheck']").change(function() { $all.prop('checked', $ch.filter(':checked').length == $ch.length); }), $all = $('input[name=allCheck]').click(function () { $ch.prop('checked', this.checked); }); 

http://jsfiddle.net/wKgZV/1/

这将根据检查的outcheck复选框的数量自动选择和取消选中main复选框。