[英]Get ID of parent element on click
我正在嘗試在LI
單擊時顯示父UL
ID。 但警報顯示值未定義。 我哪里錯了?
HTML:
<ul id='uiID'>
<li id='myLi'>A</li>
</ul>
JavaScript
var x = document.getElementById("myLI").parentNode.nodeName;
alert(x.id);
您沒有將任何點擊事件附加到元素和nodeName
在您的情況下返回LI
,所以這是不想要的。 你想要的是
document.getElementById("myLI").onclick = function(e){
alert(e.target.parentNode.id);
}
你可以這樣做:
<ul id='uiID'>
<li id='myLi' onclick="alert(this.parentNode.id)">A</li>
</ul>
Javascript 對大多數情況都區分大小寫:
<li id='myLi'>A</li>
^^--- big L, small i
var x = document.getElementById("myLI").parentNode.nodeName;
^^---big L, big I
由於您使用的是未定義的 ID,因此 getElementById 將為“未找到匹配項”返回 null。 Null 沒有“parentNode”,因此您的錯誤。
var id = $(this).parent().attr("id");
console.log(id);
HTML:
<ul id='uiID'>
<li id='myLi'>A</li>
</ul>
JavaScript(*你只需要從 x 中刪除“.nodeName”)
var x = document.getElementById("myLi").parentNode;
alert(x.id);
您也可以使用最接近的函數來獲取父級。 獲得最接近我的元素的 ul。
var el = document.getElementById('myLi');
var r1 = el.closest("ul");
您可以使用 document.getElementById("myLI").parentElement.id
<p>Example list:</p> <ul id="ul-id"> <li id="myLI">Coffee</li> <li>Tea</li> </ul> <p>Click the button to get the node name of the parent element of the li element in the list.</p> <button onclick="myFunction()">Try it</button> <p id="demo"></p> <script> function myFunction() { var x = document.getElementById("myLI").parentElement.id; document.getElementById("demo").innerHTML = x; } </script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.