2012-08-24 21 views
6

jQuery ile ilgili bir sorunum var. Bir div içindeki <a> etiketlerinin miktarını saymaya ihtiyacım var. Şimdi bu, $('.classOfDiv > a').size(); kullanılarak kolayca yapılabilir. Ama a'nın sınıfında bir kaç tane sınıfın içinde olduğunu saymaya ihtiyacım var.Sayfanın başına dön

Ex. 12

sonucu ile

<div class="classOfDiv"> 
    <div class="div1"> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
    </div> 
    <div class="div2"> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
    </div> 
    <div class="div3"> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
    </div> 
    <div class="div4"> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
     <a href="" class="link">Link</a> 
    </div> 
</div> 

$('.classOfDiv > a').size();

Bu yapılabilir?

Şimdiden teşekkürler!

cevap

11

Sadece alla.classDiv soyundan değil, sadece direkt olanları almak için seçiciden > kaldırın:

$(".classOfDiv a").length 
+0

Teşekkür bir keman here yaptı! :) –

2

.classOfDiv > a seçici sadece size doğrudan torunları <a> etiketlerini alacak <div class="classOfDiv">, sen için kodunuzu değiştirmeniz gerekir böylece:

$('.classOfDiv a').length; 

Uyarıeksikliğidoğrudan soyundan seçici.

+1

'size()', kullanımdan kaldırılmıştır. 'Length' kullanmalısınız. – VisioN

+0

Düzenlendi. Teşekkürler! –

0

Böyle bir şey yapabileceğini:

$('.classOfDiv > [class ^= "div"] > a').length 

Ben çok hızlı tepki için