我正在尝试使事情变得简单,但无法使其正常工作。

的HTML

<div id="test">
    <p>
        Super <i>cool</i>
    </p>
</div>


要么

<div id="test">
    <table>
        <tr>
            <td>Super <i>cool</i></td>
        </tr>
    </table>
</div>


我的想法很简单:单击<i>标记console.log父ID。如您所见,有时它是直接父代,有时它可以是来自上面13个节点的父代。

我正在寻找closest()parents()的东西吗?

最佳答案

假设您尝试获取具有id属性的最接近的父元素,则可以将closest()与属性选择器一起使用:



$('i').click(function() {
  var id = $(this).closest('[id]').prop('id');
  console.log(id);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="test-01">
  <p>
    Super <i>cool</i>
  </p>
</div>

<div id="test-02">
  <table>
    <tr>
      <td>Super <i>cool</i></td>
    </tr>
  </table>
</div>

关于javascript - 获取最接近的未知ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50588843/

10-12 15:45
查看更多