jQuery:找到下一个表格行

MBa*_*aas 23 javascript traversal

我有一个表,包含行,包含细胞 - 其中一些包含img,如下所示:

<img id="FormView1_btnSave_row1%1%new" style="border-width: 0px; cursor: pointer;"
src="grafik/ok_16x16.gif" onclick="cleverStuff(this)"/>
Run Code Online (Sandbox Code Playgroud)

在函数cleverStuff中我想在单击按钮的行之后的行上操作 - 这个特殊按钮仅包含在最后一行可见行中,下面有一堆隐藏行我想做第一行隐藏线可见 - 但我没能到达下一行.我的理解是,所有组合parent()next()可以用来从img到td,到tr,最后到下一个tr.所以我试着验证这个:

$(ctrl).attr('id') 正确返回img的id :)

$(ctrl).parent().attr('id') 返回NULL.

我在这里错过了什么?

tva*_*son 77

这应该给你元素的封闭tr,即使它不是元素的直接父元素,然后是该行的下一行.如果你在td内的元素上使用parent,它将为你提供列,而不是行.向parent()方法提供过滤器将简单地过滤掉父项,除非它恰好与过滤器匹配,通常导致没有匹配的元素.最近的可能是你想要的,但是如果你有嵌套的表并且想要外行而不是内行,则可能需要parent('tr').

$(this).closest('tr').next('tr')
Run Code Online (Sandbox Code Playgroud)

  • @AlphaMale对我来说似乎不太可能 (3认同)

Gre*_*reg 32

您没有向我们展示足够的HTML,但这应该有效:

$(ctrl).parent('tr').next();
Run Code Online (Sandbox Code Playgroud)


air*_*tyh 5

也许父元素没有设置id?要从图像到达下一行,我相信你可以做到:

$(this).parent('tr').next('tr')
Run Code Online (Sandbox Code Playgroud)