jQuery で既知のクラスを持つ親を見つけるにはどうすればいいですか? 質問する

jQuery で既知のクラスを持つ親を見つけるにはどうすればいいですか? 質問する

内には、それぞれ異なるネスト レベルに<div>ある他の が多数あります。すべての子に識別子を与えるのではなく、ルートにのみ識別子を与えます。次に例を示します。<div><div><div>

<div class="a" id="a5">
  <div class="b">
    <div class="c">
      <a class="d">
      </a>
    </div>
  </div>
</div>

jQuery でクラスに応答する関数を記述しd、その親であるクラスの ID を見つけたい場合はa、どうすればよいでしょうか?

$('.a').attr('id');複数のクラスがあるため、単純に を実行することはできませんa。その親の親の親の ID を見つけることはできますが、設計が悪く、遅く、あまりポリモーフィックではないようです (クラス の ID を見つけるには、別のコードを記述する必要がありますc)。

ベストアンサー1

と仮定すると、次thisのよう.dに書くことができる。

$(this).closest('.a');

closest方法セレクターに一致する要素の最も内側の親を返します。

おすすめ記事