我有一行和多个<td>
。在我的一个函数中,我遇到了一种情况,我必须知道我的currentSelectedTD
是否是行中的最后一个<td>
,以便我可以对它进行不同的处理。
我尝试$(currentSelectedTD).is(":last")
无法正常工作并始终返回true
。
我还尝试了其他一些无效的可能性。
提前致谢。
答案 0 :(得分:4)
您可以使用.next()来检查元素是否具有紧随其后的兄弟。
if( $(currentSelectedTD).next().length == 0) {
// is last
}
答案 1 :(得分:0)
您可以非常轻松地检查这一点,而无需使用jQuery:
var isLastChild = currentSelectedTD.parentNode.lastElementChild == currentSelectedTD;
这具有本机DOM和简单的优点,但它只能在现代浏览器上工作(例如需要IE9)。你可以调整它以适应任何事情,但它不会是一个单行。
答案 2 :(得分:0)
认为你应该对整套进行:last
过滤并将结果存储在变量中。
然后在集合中循环,并将每个集合与您存储的集合进行比较。
答案 3 :(得分:0)
使用 -
if($('.currentSelectedTD:last')){
//do what ever you want
}
或
$lastTd = $('.currentSelectedTD').parent('tr').find('td:last')
答案 4 :(得分:0)
你只需要使用:
$(currentSelectedTD).is("td:last");