选中/取消选中 jquery 中主复选框时的复选框

Check/Uncheck checkboxes on select of a master checkbox in jquery

本文关键字:复选框 jquery 选中 取消      更新时间:2023-09-26

我的列标题中有一个复选票。单击它时,需要选中所有复选框,并且在取消选中主复选框时,应取消选中所有复选框。我用谷歌搜索了很多,但我只得到了这种事情的javascript代码。但我想要纯粹的JQuery东西。我在这里粘贴我的代码。现在单击主复选框,所有复选框都在选中,但主复选框本身有人可以帮助我处理 jquery 代码吗?

这是我的标题复选框:

<input type="checkbox" onclick="checkBoxChecked()" id="mastercheck" name ="mastercheck"/>

点击方法是

function checkBoxChecked(){
         try{
        var checkboxes=document.getElementsByName("test");
        for(i=0;i<document.getElementsByName("test").length;i++)
        {
         checkboxes[i].checked = "checked";
        }
        }
        catch(e)
        {
        }
        document.getElementById("mastercheck").checked="checked";
        return true;
        }

HTML:

<input type="checkbox" id="ckbCheckAll" />
    <p id="checkBoxes">
        <input type="checkbox" class="checkBoxClass" id="Checkbox1" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox2" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox3" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox4" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox5" />
        <br />
    </p>

JQuery:

$(document).ready(function () {
    $("#ckbCheckAll").click(function () {
        $(".checkBoxClass").prop('checked', $(this).prop('checked'));
    });
});

现场演示

$(document).ready(function() {
    $("#mastercheck").click(function() {
        var checkBoxes = $("input[name=test]");
        checkBoxes.prop("checked", this.checked);
    });                 
});

尝试

function checkBoxChecked() {
    $('input[name=test]').prop('checked', $('#mastercheck').is(':checked'))
}

选中的属性应设置为 true | false

复选框

[i].check = true;

如果这不起作用,您应该查看以下问题:在破折号中以编程方式更改复选框的状态

你为什么不尝试这样的东西:

$('.master-checkbox').click(function(){
    var master_checkbox = $(this);
    $('input[type="checkbox"]').prop('checked', master_checkbox.prop('checked'));
});

你可以尝试这样的事情:

$('#mastercheck').on('change', function() {
  if ($(this).is(':checked')) {
    // Check all
    $('.childcheck').prop('checked', true);
  }
  else {
    // Uncheck all
    $('.childcheck').prop('checked', false);
  }
});
<b> <input type="checkbox" id="ckbCheckAll" /> Check/Uncheck me </b>
 <p id="checkBoxes">
        <input type="checkbox" class="checkBoxClass" id="Checkbox1" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox2" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox3" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox4" />
        <br />
        <input type="checkbox" class="checkBoxClass" id="Checkbox5" />
        <br />
    </p>
$(document).ready(function() {
      $('#ckbCheckAll').click(function(){
        var isChecked = $('#ckbCheckAll').is(':checked');
        if(isChecked)
        {
            $('.checkBoxClass').attr('checked', true);
        }
        else
        {
               $('.checkBoxClass').attr('checked', false); 
        }
      });
    });