2011-05-22 74 views
2

例如在JavaScript数组的项目,我有以下结构:如何获取一个节点的所有孩子使用jQuery

<div class="parent"> 
    <div>1st child</div> 
    <div>2nd child</div> 
    <div>3rd child</div> 
    <div>4th child</div> 
</div> 

所有我想要的是拥有的所有孩子们的文字父div作为数组的项目。
jQuery解决方案是首选。

回答

7
var a = $(".parent").children().map(function() { return $(this).text(); }); 
+1

忘记了'获得()'在末端。 – Raynos 2011-05-22 16:46:38

+0

@emmet,地图做了什么? – kobe 2011-05-22 16:48:52

+0

如果父母除了div之外还有其他孩子,这可能会失败。为什么不是$(“。parent div”)呢? – corroded 2011-05-22 16:50:13

2
function get_this_text() { 
    return $(this).text(); 
} 

$(".parent div").map(get_this_text).get() 

下面是它的小提琴(参见导致控制台):http://jsfiddle.net/C6pHS/

+0

这个也可以。谢谢/ – 2011-05-24 16:47:21

1

可选择到其他的答案也能做到这一点,如果它可以帮助你看东西更清楚。 HTML:

<div class="parent"> 
    <div class="child">1st child</div> 
    <div class="child">2nd child</div> 
    <div class="child">3rd child</div> 
    <div class="child">4th child</div> 
</div> 

JQuery的:

var childArray = $('.child'); 
+0

我不知道,但是正如我所说的,如果它帮助他看到的话,那么就可以将孩子类添加到孩子'div's:'$('。parent> div');' – josh3736 2011-05-22 16:50:49

+1

更清楚。只是给出替代答案。有时帮助用户区分两者之间的联系。 – robx 2011-05-22 16:53:40

相关问题