jQuery计算具有特定类的div内具有特定类的div的数量

时间:2014-09-07 15:40:32

标签: javascript jquery

如何使用类item计算div中的outer-1类div的数量?结果应该是7。

我试过这个和其他几个失败的变种。

alert( $(".outer-1").$(".item").length );

这给了我12这是页面上的所有div。 alert( $(".item").length );

我如何只指定outer-1 div?

的div

<div class="outer-1">
    <div class="item">a</div>
    <div class="item">b</div>
    <div class="item">c</div>
    <div class="item">d</div>
    <div class="item">e</div>
    <div class="item">f</div>
    <div class="item">g</div>
</div>

<div class="outer-2">
    <div class="item">a</div>
    <div class="item">b</div>
    <div class="item">c</div>
    <div class="item">d</div>
    <div class="item">e</div>
</div>

3 个答案:

答案 0 :(得分:4)

使用find()选择器:

$(".outer-1").find(".item").length ;

 $(".outer-1 .item").length 

答案 1 :(得分:0)

对于你的html,$(".outer-1 .item").length就足够了,但是div.item是嵌套的,就像这样

<div class="outer-1">
    <div class="item">a</div>
    <div class="item">b</div>
    <div class="item">c</div>
    <div class="item">d</div>
    <div class="outer-x">
      <div class="item">h</div>
      <div class="item">i</div>
    </div>
    <div class="item">e</div>
    <div class="item">f</div>
    <div class="item">g</div>
</div>

您可能希望使用$(".outer-1 > .item").lengthdiv.item的孩子的所有div.outer-1

See jsFiddle

答案 2 :(得分:0)

如果你有一堆同名的outers,你可能需要循环:

$('.outer-1').each(function(){
   console.log( $('.item',this).length );
});