一尘不染

如何在jQuery中找到具有已知类的父级?

javascript

我有一个<div>包含多个其他<div>的,每个处于不同的嵌套级别。与其给每个孩子<div>一个标识符,不如给根节点<div>一个标识符。这是一个例子:

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

如果我在jQuery中编写了一个函数来响应类,d并且想找到其父类class的ID,a我该怎么做?

我不能简单地做$('.a').attr('id');,因为有多个类a。我可以找到其父代的父代的ID,但这似乎设计欠佳,速度慢,而且不是多态的(我必须编写不同的代码才能找到class的ID
c)。


阅读 283

收藏
2020-05-01

共1个答案

一尘不染

假设this.d,您可以编写

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

closest方法返回与选择器匹配的元素的最里面的父级。

2020-05-01