我正在使用jQuery
. 我写了一小段代码来让它工作。
当我选中selectAll
复选框时,它应该选择所有复选框,而当我取消选中任何一个复选框时,它应该取消选中“全选”。而且,行为应该切换。
请检查此代码段检查 - 取消选中
不知何故,我不相信我的代码。推荐我是否可以以更好的方式做到这一点。TIA。
我正在使用jQuery
. 我写了一小段代码来让它工作。
当我选中selectAll
复选框时,它应该选择所有复选框,而当我取消选中任何一个复选框时,它应该取消选中“全选”。而且,行为应该切换。
请检查此代码段检查 - 取消选中
不知何故,我不相信我的代码。推荐我是否可以以更好的方式做到这一点。TIA。
$(function() {
var elems = $('input[type="checkbox"]');
elems.first().on('change', function() {
$(this).siblings(elems).prop('checked', this.checked);
}).end().not(':first').on('change', function() {
elems.first()
.prop('checked', ((this.checked ? elems.length - 1 : elems.length) == $(elems)
.filter(':checked').length));
});
});
1)你每次给的时候都在搜索 DOM
$(':checkbox').attr('checked', true);
$(':checkbox :first').click()
等等...而不是存储在变量中并使用它
2)得到没有。选中的复选框(你不需要迭代和获取计数),
$(':checkbox').find(':checked').length