我想在取消选中checkbok时取消选中“全部”复选框
$('#All').click(function () {
var status = $(this).is(":checked");
if (status) {
$.each($('input[name="checkbox"]'), function () {
this.checked = true;
})
$('input[name="checkbox"]').attr("checked", "checked");
} else {
$('input[name="checkbox"]').removeAttr("checked");
$.each($('input[name="checkbox"]:checked'), function () {
this.checked = false;
})
}
})
答案 0 :(得分:1)
尝试使用此
$(".all").click(function()
{
var el=this;
$(".child").each(function(){
$(this).prop("checked",$(el).prop("checked")) ;
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="all"/>All
<input type="checkbox" class="child"/>one
<input type="checkbox" class="child"/>two
<input type="checkbox" class="child"/>three
<input type="checkbox" class="child"/>four
&#13;
答案 1 :(得分:0)
简单的Javascript:
document.getElementById('All').addEventListener('click', function(event) {
var checkboxes = document.querySelectorAll('input[name="checkbox"]');
Array.from(checkboxes).forEach(checkbox => {
checkbox.checked = this.checked;
});
});
答案 2 :(得分:0)
要获得预期的resule,请使用以下选项
Check All:
('input[type="checkbox"]').prop("checked", "checked");
Uncheck All:
$('input[type="checkbox"]').removeAttr("checked");
$(&#39;#All&#39;)。click(function(){ var status = $(this).is(&#34;:checked&#34;); if(status){ $(&#39;输入[type =&#34;复选框&#34;]&#39;)。道具(&#34;已检查&#34;,&#34;已检查&#34;);
} else {
$('input[type="checkbox"]').removeAttr("checked");
}
});
答案 3 :(得分:0)
Try with this :
HTML code :
<input type="button" class="check" value="check all" />
<input type="checkbox" class="cb-element" /> Checkbox 1
<input type="checkbox" class="cb-element" /> Checkbox 2
<input type="checkbox" class="cb-element" /> Checkbox 3
jquery code :
$(document).ready(function(){
$('.check:button').toggle(function(){
$('input:checkbox').attr('checked','checked');
$(this).val('uncheck all')
},function(){
$('input:checkbox').removeAttr('checked');
$(this).val('check all');
})
})
Hope you get your point.
答案 4 :(得分:0)
我发现$('input[name="checkbox"]').attr("checked", "checked");
无法将所有复选框更改为已选中。使用prop()代替.attr()
$('#All').click(function () {
var status = $(this).is(":checked");
if (status) {
$('input:checkbox').prop("checked", "checked");
} else {
$('input:checkbox').removeAttr("checked");
}
});