2014-11-21 125 views
1

我想知道如何查看是否选中某一组复选框。我可以让我的脚本工作来检查单个框,特定框是否被选中,但无法找出更复杂的情况。检查是否有特定的复选框被选中

复选框:

<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 
} 

我该如何做到这一点?我需要能够检查一个不同的组合是否属实。任何帮助,将不胜感激。

谢谢。

回答

2

你可以先创建一个组,然后检查是否元素的个数相同

var group = $('#option1,#option2,#option3'); 

if (group.length === group.filter(':checked').length){ 
    // all are checked so you can do something.. 
} 
+0

一旦我发现在声明变量的第一行的错误位置上出现了“#”,这对我很好。谢谢。 – jonmrich 2014-11-21 01:29:12

+0

@jonmrich,oups ..很抱歉,..固定它:) – 2014-11-21 01:36:10

0

你也可以只选择所有选中的输入,这为选中的元素的计数:

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

并做你只需要与他们。