我想在表格中的每个td
中获得最后一个可见 tr
。
这不起作用,因为它尝试选择最后一个
到目前为止,我想到的最简单的方法是使用 有更简单的方法吗?有这样的事吗?var last_visible_cells = $(table).find("tr td:visible:last-child");
.each
循环遍历tr
元素,并将每个最后一个可见的td
附加到新的选择器列表var last_visible_cells = $(table).find("tr").lastMatching("td:visible");
答案 0 :(得分:20)
你可以这样做:
$('table tr').find('td:visible:last').addClass('last-visible');
请参阅full example(兼容jQuery 1.2+)
答案 1 :(得分:2)
为了让每个人都能看到它们,你可以做一些像
这样的事情$('table tr').each(function(){
console.log($(this).find('td:visible:last'))
})
答案 2 :(得分:0)
你想抓住所有的TD并过滤掉那些旁边没有可见元素的TD。
Dang,只有在行中间没有任何不可见的情况下才有效。
答案 3 :(得分:0)
基于Mathletics的答案,但使用nextUntil()
。这会找到每个没有可见标记的可见标记。
$('table tr').children('td').filter(function() {
return $(this).is(':visible') && $(this).nextUntil(':visible').length === 0;
})