js如何获取到当前元素的父元素的父元素的值?

图片描述

如图当点击打印这个文字的时候有一个dataprint方法,要在这个方法里面获取最近的一个tr的data-uniqueid,请问呢要如何写?

阅读 6.5k
3 个回答

onclick="dataprint(this)"

function dataprint(object){
  console.log(object.parentNode.parentNode.getAttribute("data-uniqueid"))
}
<div>
  <div></div>
  <div data-id1="65" class="grandparent">
      <div>
        <img class="img"/>
      </div>
  </div>
</div>

    var parent = document.querySelector(".img").parentNode;

    while (parent && !parent.previousElementSibling && !parent.nextElementSibling) {
      parent = parent.parentNode;
    }
    
    console.log(parent.dataset.id1) 

上面大家的方法都可以获取到。但我觉得,你生成页面元素的时候就把data-uniqueid的值拼接在dataprint()里面不就可以了吗,何必点击的时候去取父元素的父元素然后再取data-uniqueid的值。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题