2013-06-26 106 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 +)。