Пройдите вверх, пока не найдете идентификатор атрибута. - PullRequest
0 голосов
/ 06 декабря 2018

Я должен пройти вверх, пока у элемента не будет атрибута id.Моя проблема здесь в том, что элемент не является определенным, и иногда у родителя есть атрибут id, иногда у бабушки и дедушки есть атрибут id, как это происходит.Я стараюсь, как

var id = $(this).closest().find("['id']").attr("id");

У меня нет таких идей, чтобы сделать это.Может ли кто-нибудь помочь мне

1 Ответ

0 голосов
/ 06 декабря 2018

Попробуйте использовать [id] строку селектора внутри .closest, чтобы closest возвращал элемент с идентификатором.Обратите внимание, что строка селектора не должна иметь " s вокруг id:

$('span').on('click', function() {
  var id = $(this).closest("[id]").attr("id");
  console.log(id);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="outer">outer
  <div>inner
    <span>click here</span>
  </div>
</div>
...