如何在 jQuery 中选中多个复选框? [复制]
Posted
技术标签:
【中文标题】如何在 jQuery 中选中多个复选框? [复制]【英文标题】:How can I check multiple check boxes in jQuery? [duplicate] 【发布时间】:2013-08-18 10:48:10 【问题描述】:我有一个表格,每行开头都有一个复选框。每个 Checkbox 的 ID 为#tablecheckbox。表头行有一个复选图标,应该选中表中的所有框。我怎么能用 jQuery 做到这一点?
【问题讨论】:
你已经尝试了什么? ^^ 和 ID 应该是唯一的。 让你的 ids 成为一个类,然后点击这个链接:***.com/questions/426258/… 而不是使用 id 尝试使用名称属性,它可以帮助检查所有复选框。 能否请您显示您的表格的代码(至少是标题和几行正文)? 【参考方案1】:这里的 head_checkbox 是顶部标题的 id,而 person 类是所有行的复选框
$('#head_checkbox').on('change', function ()
if ($(this).is(':checked'))
$('.person').attr('checked', true);
else
$('.person').attr('checked', false);
);
$('.person').click(function ()
var total_length = $('.person').length;
var total_checked_length = $('.person:checked').length;
if (total_length == total_checked_length)
$('#head_checkbox').attr('checked', true);
else
$('#head_checkbox').attr('checked', false);
);
【讨论】:
live 已被弃用,因为应该使用 1.7 on() 来代替 我曾经设置document.getElementById("head_checkbox").checked
属性。你的方法似乎更干净。谢谢。【参考方案2】:
$('#head_checkbox').click(function ()
if ($(this).is(':checked'))
$('.person').attr('checked', true);
else
$('.person').attr('checked', false);
);
$('.person').click(function ()
if ($('.person').length == $('.person:checked').length)
$('#head_checkbox').attr('checked', true);
else
$('#head_checkbox').attr('checked', false);
);
【讨论】:
以上是关于如何在 jQuery 中选中多个复选框? [复制]的主要内容,如果未能解决你的问题,请参考以下文章