2010-03-10 2 views
0
<ul id ='caseStudies'> 
<li class="humor crime fantasy hidden"> A </li> 
<li class="crime"> B </li> 
<li class="humor crime hidden"> C </li> 
<li class="humor crime"> D </li> 
<li class="humor crime fantasy action hidden"> E </li> 
<li class="fantasy action"> F </li> 
<li class="humor fantasy"> G </li> 
<li class="crime action hidden"> H </li> 
</ul> 



$('ul#caseStudies li.hidden').each(function() { 

}//this will get all the LI in the UL that has got class 'hidden' 

Но как я могу получить все LI в UL, у которого есть класс «скрытый»?Как получить элементы, которые не имеют определенного класса в jquery?

ответ

4

попробовать :not() selector

$('ul#caseStudies li:not(.hidden)').each(function() { 

} 
+0

@Andy есть ли способ получить количество этих элементов? Я хочу использовать это в каждой() – manraj82

+0

обновил свой ответ. – rahul

+0

@ manraj82: set 'var visibleCS = $ ('ul # caseStudies li: not (.hidden)');' затем используйте 'visibleCS.length', чтобы получить общее количество элементов, найденных в запросе. –

3

Использование :not селектор

$('#caseStudies li:not(".hidden")') 

Редактировать

Чтобы получить количество также

var notHiddenElems = $('#caseStudies li:not(".hidden")');. 
var notHiddenElemsLength = notHiddenElems.length; 

notHiddenElems.each(function(){ 
    // you can use notHiddenElemsLength here 
}); 

См length

+1

lol бить вас на 2 секунды ;-) –

+0

+1 для этого @ Энди. – rahul

+0

@rahul: и +1 для вас тоже. –

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