jquery - 禁用所有复选框

标签 jquery

以下代码工作正常,但有 1 个错误

$(document).ready(
function() {


 $("#myCheckboxes input[type='checkbox']").change(function() {
    var checked = $("#myCheckboxes input[type='checkbox']:checked").length;

        if(checked == 4){
           $("#myCheckboxes input[type='checkbox']")
            .attr('disabled',true)
            .find(':checked')
            .attr('disabled',false)
    } else {
        $("#myCheckboxes input[type='checkbox']").attr('disabled',false);
    }


    });
 });

选择变为 4 后,所有复选框都将被禁用,甚至选定的复选框也会被禁用,但我不想禁用选定的复选框。

谢谢

最佳答案

试试这个

$("#myCheckboxes :checkbox:not(:checked)").attr('disabled', true)

而不是

$("#myCheckboxes input[type='checkbox']")
    .attr('disabled',true)
    .find(':checked')
    .attr('disabled',false)

关于jquery - 禁用所有复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1560546/

相关文章:

javascript - 使用 qrcode.js OnClick 生成随机 QR 码

javascript - Bower 在运行 grunt serve 后抛出 jquery "not injected"警告

javascript - 如何用JS显示一个元素并隐藏所有其他元素

javascript - 在 IE10 中使用框架会导致 SCRIPT5002 : Function expected error

javascript - block 标签 margin-bottom

javascript - 如何在自定义格式化程序中使用外部库?

javascript - 如何解决AngularJS中的关闭问题

javascript - 单击按钮时更改按钮形状

javascript - 我如何使用 jquery(或只是 javascript)遍历 cookies?

javascript - 如何使用 javascript 查找和突出显示文本,甚至在某些元素中标记了文本?