如何在javascript或jquery中获取容器ID

时间:2012-10-08 11:06:56

标签: javascript jquery html

我有一些HTML块看起来像

<li id="item261">
    <div class="itemdesc">
      <a class="icon-hide">Hide</a>
    </div>
</li>

我有一个类似

的jquery
$(document).ready(function()
{
$('.icon-hide').click(function(){
          var elemId = $(this).parent().attr("id");         
    });
});

点击“.icon-hide”时,我需要“li”标签的ID。我怎么能做到这一点?任何帮助..

2 个答案:

答案 0 :(得分:6)

我建议:

$('.icon-hide').click(function(){
    var elemId = $(this).closest('li').attr('id');
});

这是因为方法名称中隐含的parent()会查看选择器返回的元素的(父级是div);而closest()继续向上祖先树以匹配传递给方法的第一个选择器。

您可以使用parents(),但closest()parents()之间的重要区别在于closest()返回零或一个匹配,parents()将继续一直到根元素并返回它找到的每个匹配,因此它可以返回零,一个或多个匹配。

另一个区别是parents()从当前元素的父元素开始搜索,而closest()从当前元素本身开始,因此很容易使用closest()方法返回当前/ $(this)元素本身。

参考文献:

答案 1 :(得分:0)

$(this).closest('li[id]').attr('id')