2014-08-27 4 views
4

Я пытаюсь угаснуть div, как только проверено определенное количество флажков, но я не могу заставить его работать. Я попробовал val и длина, но я считаю, что я не потянул за значение правильный путь для флажков?Вызвать функцию после того, как установлено определенное количество флажков

$('input:checkbox').change(
    function(){ 
     if ($(this).is(':checked').val > 2) { 
      alert('checked'); 
     } 
    }); 

Любой вход был бы очень признателен. Благодаря!

ответ

8

Вы можете использовать селектор и проверить количество найденных элементов (length указывает это).

$('input:checkbox').change(function() { 
    var numberChecked = $('input:checkbox:checked').length; 
    if (numberChecked > 2) { 
     // Fade your div out here 
    } 
}); 
+0

Совершенная, что имеет смысл сейчас. Спасибо! – Myoji

2

Вы можете попробовать это:

$('input:checkbox').change(
function() { 
    var checkboxesChecked = 0; 
    $('input:checkbox').each(function() { 
     if ($(this).is(':checked')) { 
      checkboxesChecked++; 
     } 
    }); 

    if (checkboxesChecked > 2) { 
     alert('More than 2 checkboxes are checked.'); 
    } 
}); 
Смежные вопросы