【问题标题】:jQuery: check if checkboxes are checkedjQuery:检查复选框是否被选中
【发布时间】:2013-03-26 23:51:08
【问题描述】:

我想在提交表单时突出显示所有未选中的复选框。我在.new_order 中总共有六个复选框,我已经开始编写函数,但我有点卡住如何在.new_order 中为 each 未选中的复选框添加突出显示类.

$('#orderconfirm').click(function () {
    if ($('.modal .modal-body .new_order :checkbox').is(':unchecked') {
        $(this).addClass('highlight');
    }
});

这段代码会遍历每个复选框吗?我觉得我错过了什么。此外,此代码必须禁用按钮,直到选中每个复选框。任何帮助都会很棒!

【问题讨论】:

标签: javascript jquery checkbox jquery-selectors


【解决方案1】:

尝试在选择器末尾使用 :not(:checked),在此调用 .addClass() 以将类添加到所有返回的对象。

Demo

$('#orderconfirm').click(function () {
    $('.modal .modal-body .new_order input:checkbox:not(:checked)')
        .addClass('highlight');
});

【讨论】:

    【解决方案2】:

    这是以下方法的有效jsFiddle

    您可以使用 jQuery 的 each() 来遍历您的类,并将您的 CSS 类添加到符合您条件的任何元素:

    $('#orderconfirm').click(function () {
      $('.new_order').each(function(){
         if($(this).prop('checked') === false) {
            $(this).addClass('highlight');
         }
      });
    });
    

    【讨论】:

      猜你喜欢
      • 2012-01-26
      • 2014-07-02
      • 2011-05-01
      • 2021-07-16
      • 1970-01-01
      • 2019-04-11
      • 1970-01-01
      相关资源
      最近更新 更多