我如何计算孩子的数量?

时间:2010-08-23 10:26:54

标签: jquery

我有一个清单

<ul>
  <li>
  <li>
  <li>
  ...
</ul>

我需要jQuery来计算列表中的项目数。

6 个答案:

答案 0 :(得分:179)

您可以使用.length,如下所示:

var count = $("ul li").length;

.length告知选择器找到了多少匹配项,因此这会计算您拥有的<li>元素下的<ul>个数...如果有子子元素,请使用{{1}而只是获得直接孩子。如果您的网页中有其他"ul > li"元素,只需将选择器更改为仅匹配其中的元素,例如,如果它具有您使用的<ul> ID。

在您不知道子类型的其他情况下,您可以使用"#myListID > li"(通配符)选择器或*,如下所示:

.children()

或:

var count = $(".parentSelector > *").length;

答案 1 :(得分:6)

你不需要jQuery。您可以使用JavaScript .childNodes.length

如果您不想包含默认文本节点(默认为空),请确保减去1。因此,您可以使用以下内容:

var count = elem.childNodes.length - 1;

答案 2 :(得分:1)

尝试使用:

var count = $("ul > li").size();
alert(count);

答案 3 :(得分:0)

如果您使用此选项来确定当前选择器以查找其子项,该怎么办? 所以这有:<ol>然后在<li>下如何编写选择器 var count = $(this+"> li").length;无法工作..

答案 4 :(得分:0)

您可以使用jQuery来做到这一点:

此方法获取其子级列表,然后计算该列表的长度,就这么简单。

$("ul").find("*").length;

find()方法沿着子代向下遍历DOM,一直向下到最后一个子代。

注意: children()方法遍历DOM树的单个级别。

答案 5 :(得分:0)

您可以使用Element.childElementCount

<块引用>

参考:https://developer.mozilla.org/en-US/docs/Web/API/Element/childElementCount


let count = ThatParentElement.childElementCount;