我想通过选中页面上的单个复选框来选择特定名称的所有复选框,然后触发后续事件。
正如我现在所看到的那样,它似乎不会立即触发,因此在第一次检查“全选”复选框时,未选中复选框,然后通过取消选中“全选”复选框,选中所有复选框
似乎有点颠倒。
如何改进以下代码以使其正常工作?
$(document).on("click", "input[name='chkAllBs']", function () {
if ($('input[name = chkBestSeller]').prop('checked') == false) {
$('input[name=chkBestSeller]').attr("checked", "true");
$('input[name=chkBestSeller]').trigger('click');
}
else {
$('input[name=chkBestSeller]').attr("checked", "false");
$('input[name=chkBestSeller]').trigger('click');
}
答案 0 :(得分:3)
尝试
$(document).on("click", "input[name='chkAllBs']", function () {
$('input[name=chkBestSeller]').prop("checked", this.checked);
});
答案 1 :(得分:1)
就像
if ($('input[name = chkBestSeller]').prop('checked') == true) {
$('input[name=chkBestSeller]').attr("checked", true);
} else {
$('input[name=chkBestSeller]').attr("checked", false);
}
或者只是
$(document).on("click", "input[name='chkAllBs']", function () {
$('input[name="chkBestSeller"]').prop("checked", this.checked);
});
答案 2 :(得分:1)
$(document).on("click", "input[name='chkAllBs']", function () {
var c = this.checked;
$('input[name = chkBestSeller]').prop('checked',c);
});