首页 > 解决方案 > 如何在 JQuery 中获取父 ID?

问题描述

我正在尝试使用最接近 attr,但我无法获得 id。

function checkID() {
  id = $(this).closest('div').attr('id');
  alert(id);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="preview-image" id="prv-img">
  <div class="preview-remove" data-name="${fileName}" onclick="checkID()" id="prv-rmv">&times;</div>
  <img src="/images/examplefile.png" alt="">
  <div class="preview-info" id="prv-inf">${fileName}</div>
</div>

标签: javascripthtmljquery

解决方案


它不起作用的原因是在你的checkID()函数中,jQuery不知道this指的是什么,所以使用:

function checkID(obj) {
  var id = $(obj).closest('div').attr('id');
  alert(id);
}

onclick="checkID(this)"

演示

function checkID(obj) {
  var id = $(obj).closest('div').attr('id');
  alert(id);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="preview-image" id="prv-img">
  <div class="preview-remove" data-name="${fileName}" onclick="checkID(this)" id="prv-rmv">&times;</div>
  <img src="/images/examplefile.png" alt="">
  <div class="preview-info" id="prv-inf">${fileName}</div>
</div>


推荐阅读