简体   繁体   English

在给定id的元素内选择类的所有元素

[英]selecting all elements of a class within elements of given id

My HTML code looks something like 我的HTML代码看起来像

<div id="partA">
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeB"> blabla </div>
</div>

<div id="partB">
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeA"> blabla </div>
    <div class="myClass typeB"> blabla </div>
</div>

I want to use javascript to count the number of elements of class myClass , but only the one that are within #partA . 我想使用JavaScript计算myClass类的元素数量,但只计算#partA的元素数量。
When I use 当我使用
$(".myClass").size()
I get 8 as result (it counts all the elements from both partA and partB ). 结果是8 (它计算了partApartB所有元素)。
When I use 当我使用
$(".myClass.typeA").size()
I get 6 (it gets all myClass and typeA elements, from both parts) 我得到6 (从两个部分都获得所有myClasstypeA元素)
But when I use 但是当我使用
$("#partA.myClass").size()
I get 0 . 我得到0
Apparently, that javascript command only looks for elements that have both id=partA and class=myClass . 显然,该javascript命令仅查找具有id=partAclass=myClass元素。 Is it possible to reformulate that command in order to count the number of myClass class that are contained within the elements with id=partA ? 是否可以重新编写该命令以计算id=partA元素中包含的myClass类的数量?

Thanks a lot! 非常感谢!

You're missing a space in one of your selectors. 您在一个选择器中缺少空格。 Try: 尝试:

$("#partA .myClass").size()

Alternatively you could do: 或者,您可以执行以下操作:

$('#partA').find('.myClass').length;

Or 要么

var partA = $('#partA');
$('.myClass', partA).length;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM