2016-03-25 5 views
0

ラベル内のテキストを取得しようとしていて、それを親( "li")までトラバースしてIDとして設定します。jQuery - 1つの親をトラバースしてIDを設定する

各反復でテキストが正しく取得されていますが、IDとして設定しようとして問題が発生しています。

<script> 
    $('.collapse li label').each(function() { 
     var test = $(this, '.collapse li label').text(); 
     $(this, '.collapse li label').parent("li").attr("id", test); 
    }); 
</script> 

私も試してみた:

$('.collapse li').attr("id", test); 

そして最後に:

$(this).parent('li').attr("id", test); 

無駄に。

これを正しく見る方法を理解してもらえますか?

以下の図を参考にしてください。だから、

$(this).find('.collapse li label').text(); 

答えて

3

$(this)オブジェクト、あなたがコード化された方法は、に似て

$('.collapse li label').each(function() { 
    var test = $(this).text(); 
    $(this).parent("li").attr("id", test); 
}); 

にアクセスしながらselectorcontextを設定する必要はありません:私が達成しようとしていますあなたは同じ要素を見つけています。それはあなたの場合は何も得られません。

+1

ありがとうございました! 私はあなたの答えを受け入れるでしょう! –

+0

@MikeVanStanお手伝いをしてうれしい! –

+0

@downvoter:コメントしますか?私はこれがフォローアップ投票でなければならないと信じています。ではない? –

関連する問題