从一个div得到所有的孩子divs id

时间:2011-03-25 08:04:20

标签: javascript jquery dom

如何在“test”div的子项中获取所有div ID?

下面的选择器仅提供“狗”:例如,我需要“狗”,“猫”,“drig”。

var all = $(".test div").attr("id");
$("div").text(all);

<div class="test">
    <div id="dog"></div>
    <div id="cat"></div>
    <div id="drig"></div>
</div>

由于

4 个答案:

答案 0 :(得分:7)

如果你指的是元素的所有直接后代,那么你必须将选择器更改为$(".test > div")(它是child selector)。如果您想选择所有后代,那么您可以保持原样。

使用.map(),您可以创建一个ID数组:

var all = $(".test > div").map(function() {
    return this.id;
}).get();

答案 1 :(得分:2)

在这里使用.map()

var idArray = $("div.test > div").map(function(){
    return this.id;
}).get();

Working demo

答案 2 :(得分:0)

$(".test div").each( function() {

   console.log( $(this).attr("id") );

});

example in JSBin

答案 3 :(得分:0)

如果您需要.test

中的所有div

$('div.test div)

但如果你有

<div class="test">
    <div id="dog"></div>
    <div id="cat"></div>
    <div id="drig">
            <div id="mouse"></div>
    </div>
</div>

你不需要#mouse

$('div.test > div')