使用next()选择下一个表行是undefined

时间:2015-09-28 03:12:15

标签: jquery jquery-selectors

我的表中有两行,如此jsfiddle链接所示, http://jsfiddle.net/o6ew3zom/

我使用table tr选择所有行并访问下一行

$(this).next()

打印,

the current element id is  firstRow
the next element id is undefined
the current element id is  secondRow
the next element id is undefined

我希望,

    the current element id is  firstRow
    the next element id is secondRow
    the current element id is  secondRow
    the next element id is undefined

2 个答案:

答案 0 :(得分:1)

因为一个人在thead中而另一个人在tbody中。 thead中的那个没有下一个元素,而tbody中的那个也没有下一个元素。但是如果你试图删除thead和tbody,它会显示第一个元素的id,如小提琴中所示。

demo

<table>
    <tr id="firstRow">
        <th>state</th>
        <th>compound</th>
    </tr>
    <tr id="secondRow">
        <td>solid</td>
        <td>iron</td>
    </tr>
</table>

答案 1 :(得分:1)

JQuery.next()函数返回兄弟元素。

如果你需要获取表中的所有行,请使用:

var allrows = $(this).closest("table").find("tr");