2016-01-28 2 views
0

Как проверить, проверены ли какие-либо флажки в chkInv * (chkInv1 и chkInv2) и исключены chkUnrelated.jQuery - Проверьте, проверена ли группа контрольных ящиков

<label for="chkInv2-0"> 
    <input name="chkInv2" id="chkInv2-0" type="checkbox" value="1"> 
    chkInv2 
</label> 

<label for="chkInv2-1"> 
    <input name="chkInv2" id="chkInv2-1" type="checkbox" value="2"> 
    chkInv2 
</label> 

<label for="chkInv3-0"> 
    <input name="chkInv3" id="chkInv3-0" type="checkbox" value="3"> 
    chkInv3 
</label> 

<label for="chkInv3-1"> 
    <input name="chkInv3" id="chkInv3-1" type="checkbox" value="4"> 
    chkInv3 
</label> 

<label for="chkUnrelated"> 
    <input name="chkUnrelated" id="chkUnrelated-1" type="checkbox" value="4"> 
    chkUnrelated 
</label> 

Мой текущий код проверяет все флажки на странице.

var checkBoxes = $('input:checkbox:checked').length;

Могу ли я использовать какой-то регулярное выражение?

var checkBoxes = $('input:checkbox[name=chkInv*]:checked').length;

+1

'[name^= chkInv]' соответствует именам, начинающимся с 'chkInv'. Все селектора атрибутов jQuery перечислены здесь: https://api.jquery.com/category/selectors/attribute-selectors/ – Barmar

+2

Вы также можете использовать ': not ([name = chkUnrelated])'. – Barmar

+0

'var ischecked = $ ('input [name^= chkInv]'). Is (': checked');' –

ответ

0

Это даст вам checkboxes без chkUnrelated

var checkBoxes = $(':checkbox[name^=chkInv]'); 
+0

Спасибо! Это то, что я искал! – Shanka

1

Для проверки любой из установлен флажок, используйте следующие

if($('input[name^="chkInv"]:checked').length > 0) { 
      //Code goes here 
} 

Это автоматически исключит флажок с именем chkUnrelated

+0

Спасибо! Это помогает! – Shanka

Смежные вопросы