使用 JQuery 多次选择取消选中复选框

Multiple Select Unselect Checkbox using JQuery

本文关键字:复选框 取消 选择 JQuery 使用      更新时间:2023-09-26

这是我使用 Jquery 选择取消选择复选框的代码:

<input id="demo_box_0" class="checkAll css-checkbox chk_box" type="checkbox" onclick="selectAll(this)" title="Select All"/>

其他复选框是:

<input id='"demo_box_".$row->CompanyID."'" class='"css-checkbox csscheck'" type='"checkbox'" value='"".trim($row->CompanyID)."'"  />

由于我的类名很长,我没有得到预期的结果

这是我的脚本:

$('.checkAll css-checkbox chk_box').click(function() {
    if ($(this).is(':checked')) {
        $('div input').attr('checked', true);
    } else {
        $('div input').attr('checked', false);
    }
});

正在犯什么错误,我该如何解决这个问题?

更新:

我什至试过这个

<script>
$(document).ready(function(){
$("#demo_box_0").click(function(){
        //alert("just for check");
        if(this.checked){
            $('.checkAll css-checkbox chk_box').each(function(){
                this.checked = true;
            })
        }else{
            $('.checkAll css-checkbox chk_box').each(function(){
                this.checked = false;
            })
        }
    });
});
</script>

选择器是错误的,它应该是:

$('.checkAll.css-checkbox.chk_box');

上面的选择器选择具有这 3 个类名的所有元素。 如果您希望它只选中具有这些类名的复选框,您还可以将元素类型添加到选择器中:

$('input[type=checkbox].checkAll.css-checkbox.chk_box');

此外,对于修改属性,您应该使用 prop 方法:

$('.checkAll.css-checkbox.chk_box').on('change', function() {
    $('div input').prop('checked', this.checked);
});