2014-10-27 2 views
0

Я пытаюсь разработать фильтр с jquery и динамическими флажками и divs из списка sharePoint, моя проблема заключается в том, как отображать все div, если флажки не отмечены, вот что я сделал:показать все divs, если флажок не установлен. JQuery

$("input:checkbox").change(function() { 
    if ($('input:checkbox').not(':checked').length == $('input:checkbox').length) { 
     $('.flowers > div').show(); 
    } 
}); 

цветы класс моего контейнера DIV, я хочу, чтобы отобразить все дивы в цветы DIV, если нет флажок не установлен.

Спасибо за вашу помощь

+0

И если вы что-то проверите, еще раз продемонстрируйте div? – dfsq

ответ

0

Вы должны скорее искать проверяемые флажки подсчитывать, показать DIV, если счетчик равен 0 еще скрыть их:

if ($('input:checkbox:checked').length == 0) { 
    $('.flowers > div').show(); 
} 
+0

Спасибо за ваши ответы, в основном «$ ('. Flowers> div'). Show();" не работает – walido

+0

walido: вы написали событие в DOM? –

+0

Да, я сделал, это в $ (документе) .ready (function() {}); – walido

0
if ($("input:checkbox:checked").length == 0) 
{ 
    // your code to show all divs 
} 
else 
{ 
    //code to show the div that corresponds to checked checkbox only 
} 
+0

Пожалуйста, ответьте на весь вопрос, а не только на его часть. –

0

Если вам нужны галочки не чтобы проверить, я могу помочь вам в этом примере:

HTML:

<form id="form"> 
<input type="checkbox" name="vehicle" value="Bike">I have a bike<br> 
<input type="checkbox" name="vehicle" value="Car">I have a car 
</form> 

JS:

$("#form").change(function() { 
    checkMyCheckbox(); 
}); 

function checkMyCheckbox() { 
    var a = $("#form").find("input:checked").length; 
    if(a == 0) { 
     alert("no checked boxes"); 
    }  
} 

Что происходит здесь, вы берете форму с флажками, вы получите количество проверяемых элементов. Если число равно 0, у вас нет элементов с проверкой. Сделайте ваши вещи в заявлении, если

0

Вот мой полный метод:

$(document).ready(function() { 
$("#vcf-theme").accordion(); 
$('div.flowers-wrap').find('input:checkbox').on('click', function() { 
    $('.flowers > div').hide(); 
    $('div.flowers-wrap').find('input:checked').each(function() { 
     $('.flowers > div.' + $(this).attr('rel')).show(); 
    }); 
}); 

$("input:checkbox").change(function() { 
    if ($('input:checkbox').not(':checked').length == $('input:checkbox').length) { 
     alert("no one is checked !"); 
     $('.flowers > div').show(); 
    } 
}); 

});

предупреждающее сообщение отображается, но не divs

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