如何查找当前TD是TR中的最后一个TD

我有一行和多个

。 在我的一个函数中,我遇到一种情况,我必须找出我的currentSelectedTD是否是行中的最后一个

,以便我可以区别对待它。

我尝试了$(currentSelectedTD).is(":last") ,它不工作并且总是返回true 。 我还尝试了其他几种不起作用的可能性。

提前致谢。

您可以使用.next()来检查元素是否具有紧随其后的兄弟。

 if( $(currentSelectedTD).next().length == 0) { // is last } 

认为你应该这样做:last过滤整个集并将结果存储在变量中。 然后在集合中循环并将每个集合与您存储的集合进行比较。

使用-

 if($('.currentSelectedTD:last')){ //do what ever you want } 

要么

 $lastTd = $('.currentSelectedTD').parent('tr').find('td:last') 

您可以非常轻松地检查这一点,而无需使用jQuery:

 var isLastChild = currentSelectedTD.parentNode.lastElementChild == currentSelectedTD; 

这具有既是本机DOM又简单的优点,但它只能在现代浏览器上工作(例如需要IE9)。 你可以调整它以适应任何事情,但它不会是一个单行。

你只需要使用:

 $(currentSelectedTD).is("td:last");