我想知道如何使用jQuery获取HTML表的最后一个可见子项?我问的原因是,我不能使用CSS 3来获取最后一个孩子,因为旧浏览器不支持它,这是我正在处理的遗留项目。
我有一个像这样的表结构:
<table id="table">
<tr>
<td>Some name</td>
</tr>
<tr>
<td>Some name</td>
</tr>
<tr style="display:none;">
<td>Some name</td>
</tr>
</table>
最后一个表格行不可见,当点击数据旁边的加号但它不相关时会显示。我想了解如何使用jQuery选择器获取最后一个可见的表行。
目前我正在使用
$last = $('#table').find('tbody tr:last-child');
$last.addClass('last-child');
但它实际上返回了隐藏的表格行。
提前谢谢
答案 0 :(得分:15)
尝试:
$('tr:visible:last','#table')
答案 1 :(得分:5)
$last = $('tbody tr:visible').last();
答案 2 :(得分:2)
$last = $('#table').find('tbody tr:visible:last');
$last.addClass('last-child');
正如Mathieu所链接的那样。
答案 3 :(得分:0)
尝试其中一个
$last = $('#table').find('tbody tr:visible:last-child');
or
$last = $('#table').find('tbody tr:visible').is(':last-child');