web-dev-qa-db-ja.com

jQuery-要素の第2レベルの親を取得する

<a>要素の親の親(祖父母?)を取得しようとしています。その祖父母を見つけて、その要素で<b>タグを見つけ、そのテキストを変数として保存して、ページの他の場所に公開したいのです。 parent()関数を使用しようとしましたが、成功しませんでした。

私が試したコードは次のとおりです。

    $('.mixPlayCell a').click( function() {
        var title = $(this).parent().get(0).parent().get(0).text();
        alert(title);
    });
40
j-man86

試してください:

$(this).parent().parent().find('.thingtofind').text();
40
MDCore

2番目の親を選択するため

parents(':eq(1)')

より滑らかに見える

parent().parent()

また、あなたはそれを見つけるかもしれません

closest('ul')

仕事によく合います。

57
Radek

parents() はリストを返すため、これは機能します。

$(this).parents()[1];
5
DidThis
$('.mixPlayCell a').click(function() {
  elem = $(this).parent().parent();
  title = $("tag selector goes here",elem).html();
});

このようなもの?

3
Jeriko

親は1つだけで、.get(0)は不要です

    var title = $(this).parent().parent().find("whateveryouwant").html();
1
marcgg
$(this).parent().parent().find('mytag').text()

うまくいくはずです。

findメソッドで任意のセレクターを使用できます。祖父母の要素の直接の子を検索する必要がある場合、要素のすべての子を検索するfindの代わりに$.childrenを使用することもできます。

0
Jan Jongboom