如何在表格中找到div的父ID? 我有以下结构:
<div id="parent">
<table>
<tbody>
<tr>
<td>
<div id="child" >
</div>
</td>
</tr>
</tbody>
</table>
</div>
<script type="text/javascript">
$(document).ready(function()
{
var parent = $("#child").parent().attr("id");
alert(parent);
});
当div在里面时&lt; TD&GT;父母是空的。当我把div移到外面时&lt; TD&GT;它工作正常。你能帮我找到里面的div吗?
谢谢
答案 0 :(得分:10)
您可以使用.closest(),它找到与指定选择器匹配的最近父级。在你的情况下:
var parentId = $('#child').parent().closest('div').attr('id');
答案 1 :(得分:5)
如果您的意思是想要查找包含您的表格的DIV的ID,那么您可以使用closest()
var parent = $("#child").parent().closest('div').attr("id");
编辑
阅读文档后,closest()
优于parents()
,因为它不会传播到根节点。感谢Andy E的抬头
答案 2 :(得分:0)
$(document).ready(function()
{
var parent = $("#child").parent().attr("id");
alert(parent);
});
您正在尝试读取元素“id”的属性,并且没有名称为“id”的属性。
以下代码可以使用:
<table>
<tbody>
<tr>
<td id="divParent">
<div id="child" ></div>
</td>
</tr>
</tbody>
</table>
<script type="text/javascript">
$(document).ready(function()
{
var parent = $("#child").parents('div:first').attr("id");
alert(parent);
});
</script>
这将为您提供“divParent”的警告信息。