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

2022-08-30 00:01:36

我有一个里面有许多其他的,每个在不同的嵌套级别。与其给每个孩子一个标识符,我宁愿只给根一个标识符。下面是一个示例:<div><div><div><div>

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

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

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


答案 1

假设是,你可以写this.d

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

最接近的方法返回与选择器匹配的元素的最内层父级。


答案 2

将选择器传递给 jQuery 函数:

d.parents('.a').attr('id')

编辑嗯,实际上Slaks的答案是优越的,如果你只想要与你的选择器匹配的最接近的祖先。