2013-06-26 63 views
2

是否有一种jquery方法可以让您找到父节点下的div元素数。查找父div下的div元素数

所以说,我有这样的设置

<div id="parent"> 
    <div id="child1"></div> 
    <div id="child2"></div> 
</div> 

如果我想找到下家长的div的数量将是2

或本

<div id="parent"> 
    <div id="child1"><div id="childer1"></div></div> 
    <div id="child2"></div> 
</div> 

应该给我3.

有什么方法可以帮你吗?

回答

0

可以使用长度

$('#parent div').length 
3

这应该做到这一点得到数:

var descendant_count = $("#parent div").length; 
+0

谢谢你的答案! –

7

是。如果你想所有他们:

var divs = $('#parent').find('div').length; 

var divs = $('#parent div').length; 

如果你只是想在直接孩子

var divs = $('#parent').children('div').length; 

var divs = $('#parent > div').length; 

如果您的起始元素是您已经获得参考的东西,那么涉及“find”和“children”的变体很方便。

+3

第二个例子清楚地表明他想要所有人,而不仅仅是直接的孩子。 – Barmar

+1

@Barmar是的,我非常确定是这种情况,但我认为答案可以覆盖未来的读者: - ) – Pointy

+0

谢谢你的答案! –

0

尝试:

$('#parent').find('div').length; 
0

没有图书馆

document.getElementById("parent_div").children.length; 
+2

这不会给第二个例子的正确答案。 – Barmar

1

纯香草的解决方案:

document.getElementById('parent').querySelectorAll('div').length; 

jsFiddle here.

要注意:querySelectorAll()仅在更新版本的IE中受支持(截至IE8 +)。