【问题标题】:Check if specific set of checkboxes are checked检查是否选中了特定的复选框
【发布时间】:2014-11-21 09:55:45
【问题描述】:

我正在尝试弄清楚如何查看是否选中了一组复选框。我可以让我的脚本检查是否选中了单个框、特定框,但无法找出更复杂的情况。

复选框:

<input type="checkbox" id="option1" value="1" >
<input type="checkbox" id="option2" value="2">
<input type="checkbox" id="option3" value="3">

jquery的相关部分:

if ($('input[id=option1]').is(':checked')) {
     //do something
}

基本上,我想做的是这个(我知道这行不通):

if ($('input[id=option1]').is(':checked')) AND ($('input[id=option2]').is(':checked')) {
     //do something
}

我该如何完成这样的事情?我需要能够检查多个不同组合是否为真。任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: javascript jquery checkbox


    【解决方案1】:

    您可以先创建一个集合,然后检查元素的数量是否与被检查元素的数量相同

    var group = $('#option1,#option2,#option3');
    
    if (group.length === group.filter(':checked').length){
      // all are checked so you can do something..
    }
    

    【讨论】:

    • 一旦我发现你在声明变量的第一行的错误位置有“#”,这对我很有用。谢谢。
    • @jonmrich,哎呀..对此感到抱歉..修复它:)
    【解决方案2】:

    你也可以用这个选择所有选中的输入:

    $('input[type="checkbox"]:checked')
    

    只用它们做你需要的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-28
      • 2012-02-09
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      相关资源
      最近更新 更多