Jquery, как считать флажки из разных дел

0

У меня проблема с подсчетом флажков, которые находятся в разных div. Он должен учитывать, если в каждом div установлен хотя бы один флажок, и когда есть, он активирует кнопку отправки, иначе кнопка отправки неактивна.

<div id="collapseOne">
  <span class="custom-checkbox addspace pull-left">
  <input type="checkbox"/>
  <span class="box"><span class="tick"></span></span>
</span>
</div>
<div id="collapseTwo">
  <span class="custom-checkbox addspace pull-left">
  <input type="checkbox"/>
  <span class="box"><span class="tick"></span></span>
</span>
</div>
$(document).ready(function() {
    $a=$('#collapseOne input[type="checkbox"]').filter(':checked').length;
    $b=$('#collapseTwo input[type="checkbox"]').filter(':checked').length;

    if(($a && $b)>0 ){
        $("#button").addClass('active') 
    }
    else{
        $("#button").removeClass('active').addClass('disabled') 
    }

});
  • 0
    Вы пробовали какие-либо решения?
  • 0
    Опечатка? lenght должна быть length
Показать ещё 1 комментарий
Теги:
checkbox

1 ответ

2
Лучший ответ

Вы должны использовать length вместо lenght

$a=$('#collapseOne input[type="checkbox"]').filter(':checked').length;
$b=$('#collapseTwo input[type="checkbox"]').filter(':checked').length;

а также использование:

if($a > 0 && $b>0 ){

вместо:

if(($a && $b)>0 ){

Изменение: вам также необходимо обернуть свой код внутри функции change() чтобы отслеживать, когда ваш вход был изменен:

$(document).ready(function () {
    $('input[type="checkbox"]').change(function () {
        $a = $('#collapseOne input[type="checkbox"]').filter(':checked').length;
        $b = $('#collapseTwo input[type="checkbox"]').filter(':checked').length;

        if (($a && $b) > 0) {
            $("#button").addClass('active')
        } else {
            $("#button").removeClass('active').addClass('disabled')
        }
    }).change();
});

Демо-версия скрипта

  • 0
    исправлены опечатки и предложение if, все еще не работает
  • 0
    Пожалуйста, проверьте мое обновление :)
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню