我有一系列基于部分的幻灯片:
<div id="slides">
<section id="first">
<section>
<table>
<thead>
</thead>
<tbody>
<tr id="somethingUnique">
...
</tr>
</tbody>
</table>
</section>
<section>
<table>
<thead>
</thead>
<tbody>
<tr id="somethingUnique">
...
</tr>
</tbody>
</table>
</section>
...
</section>
</div>
我需要选择从#first部分的最后一部分中获取表格中最后一行的ID。
我正在使用以下Jquery,回到“未定义”......任何想法?
var lastListItem = $('#first:last-child table>tbody>tr:last').attr("id");
alert(lastListItem);
答案 0 :(得分:18)
答案 1 :(得分:0)
var lastListItem = $('#first section:last table tr:last').attr("id");
答案 2 :(得分:0)
var lastListItem = $("#first").find("section").last().find("tr").last().attr("id");
我更喜欢使用[0] .id而不是.attr(“id”),因为它少了一个方法调用;但是,如果你不肯定你在这个DOM位置总是有一个表格,那么attr更安全。
答案 3 :(得分:0)
<强> .find(): 强>
获取当前匹配组中每个元素的后代 元素,由选择器,jQuery对象或元素过滤。
$("#first").find("tr:last").attr("id")
或更简单地在这种情况下:
$("#first tr:last").attr("id")
<强> EXAMPLE 强>
答案 4 :(得分:0)
其他答案有效但你尝试的问题是这样的事实
:last-child
必须应用于子元素(section
),而不是父元素(#first
)。以下应该有效
$('#first section:last-child table>tbody>tr:last').attr("id");
可以简化为
$('#first section:last-child tr:last-child').attr("id");