我需要在单击a
元素时获取第一个最接近(最近)的li
父元素的id
。
<ul>
<li id="wrong1">
<ul>
<li id="p1">
<a href="" class='btn'></a>
</li>
<li id="p2">
<a href="" class='btn'>Click here!</a>
</li>
<li id="p3">
<a href="" class='btn'></a>
</li>
</ul>
</li>
<li id="wrong2"></li>
</ul>
当我单击Click here!
时,我应该看到li#p2
元素。
我使用:
$('a.btn').click(function(e) {
var GotIt = $(this).parents().find('li').attr('id');
});
但显然它没有起作用。我也尝试了closest()
,也是同样的结果。
如何正确获取元素?
您应该将脚本编写为
$('a.btn').click(function(e) {
var GotIt = $(this).closest('li').attr('id');
});
因为"li"是"a"元素的直接父元素,所以您还可以使用LIKE
$('a.btn').click(function(e) {
var GotIt = $(this).parent().attr('id');
});