1

こんにちは、私のページには、多くの子 div を持つ 1 つのメイン div があります。クラス名に基づいて各div idを見つけたい、つまり、

<div id="main"> 
 <div id="child1" class="child"> 

</div>
 <div id="child2" class="child"> 

</div>
 <div id="child3" class="child"> 

</div>
</div>

次のスクリプトを使用して、各 div の ID を取得しようとしています。しかし、最初のdiv idのみを表示しています

$("#main").each(function() {
    var val = $(this).find(".child").attr("id");
     alert(val);//displays only child1
 });

各div IDを取得する方法を教えてください

4

2 に答える 2

6

子divの代わりにメインdivをループしているため、最初の子div idのみを取得します

あなたはこのようにすることができます

$.each($("#main .child"),function()
{
   alert($(this).attr('id'));
});

デモ

于 2012-11-20T06:50:45.260 に答える
1

これは、同じことを行う別の方法です。this.idの代わりに を使用していることに注意してください$(this).attr('id')。よりシンプルで読みやすい。

$('#main .child').each( function(){
    alert(this.id);
});

jsbinへのリンク

注: jQuery の最新バージョンでは.prop()なく、使用することをお勧めします。.attr()

于 2012-11-20T06:54:42.387 に答える