无法在HTML表格中获取上一行的属性

阿通

我一直在研究此HTML表结构:

<table>
    <tr id='1' pid='p3'><td><button id='1' onClick="get(this,'p3')">1</button></td></tr>
    <tr id='2' pid='p3'><td><button id='2' onClick="get(this,'p3')">2</button></td></tr>
    <tr id='3' pid='p2'><td><button id='3' onClick="get(this,'p2')">3</button></td></tr>
    <tr id='4' pid='p1'><td><button id='4' onClick="get(this,'p1')">4</button></td></tr>
    <tr id='5' pid='p2'><td><button id='5' onClick="get(this,'p2')">5</button></td></tr>
    <tr id='6' pid='p2'><td><button id='6' onClick="get(this,'p2')">6</button></td></tr>
</table>

我的目标是在当前表行内单击按钮时获取(“最靠近,上方”)表行按钮的ID(对不起,这有点令人困惑)

我这样使用jQuery:

function get(elm,pid){
    alert($.nid=$(elm).closest('tr').prev("tr[pid='"+pid+"']").find('button').attr('id'));
}

我发现,如果这些行位于另一行之上,那么就可以毫无问题地获取上一行中的按钮的id。

但是,如果该行位于上方,则无法获取值;逻辑上有什么问题?我要去哪里错了?

请在这里找到我的解释小提琴:

http://jsfiddle.net/jtYDP/386/

不明确的

.prev()方法选择一个同级元素。如果传递选择器,则只有与指定选择器匹配时,它才会选择前一个同级。

假设您单击第四个按钮。get函数的第二个参数p1,因为tr与指定的选择器不匹配jQuery返回一个空的集合,因此attr返回undefined

如果我正确理解了这个问题,您希望选择tr相同的问题pid您可以使用.prevAll().first()方法。

$('tr button').on('click', function() {
    var $row = $(this).closest('tr'),
        pid = $row.attr('pid');

    var id = $row.prevAll("tr[pid='"+pid+"']")
                 .first() 
                 .find('button')
                 .attr('id');
});

请注意,ID必须是唯一的并且pid不是有效的属性。您可以改用data-*属性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将表格行放在一行HTML + CSS上

来自分类Dev

在HTML表格中,是否可以获取位于另一行中的元素的ID?

来自分类Dev

从javascript中的HTML表格中删除一行

来自分类Dev

无法选择表格中的第一行

来自分类Dev

无法编辑表格中的第一行

来自分类Dev

将文本放在HTML表格的一行中

来自分类Dev

在同一行上获取文本HTML / CSS

来自分类Dev

从使用(WHERE)条件选择的行中获取上一行和下一行

来自分类Dev

在html表格中选择一行

来自分类Dev

如何计算表格的上一行并显示在表格的当前行中?

来自分类Dev

从SSRS中的上一行获取值

来自分类Dev

在CSS中的一行上获取缩略图

来自分类Dev

从DrawColumnCell中的上一行获取值

来自分类Dev

在表格中设计一行-CSS

来自分类Dev

HTML 表格中第一行和第一列之后的行

来自分类Dev

使用Google表格中的arrayformula()在每一行上找到一个min()值

来自分类Dev

在一行上打印对象属性

来自分类Dev

获取表格最后一行中单元格的值

来自分类Dev

获取上一行中列的值,并添加到下一行中的下一列

来自分类Dev

Python Dataframe获取上一行

来自分类Dev

获取查询的上一行

来自分类Dev

如何获取表格视图的每一行?

来自分类Dev

获取另一行中表格单元的值

来自分类Dev

如何获取表格视图的每一行?

来自分类Dev

获取Excel表格最后一行的位置

来自分类Dev

如何获取所选表格的第一行

来自分类Dev

如何在Highcharts中将HTML表格中的每一行做成饼图?

来自分类Dev

在HTML表格中,是否可以获得位于另一行的元素的ID?

来自分类Dev

如何在Highcharts中将HTML表格中的每一行做成饼图?

Related 相关文章

热门标签

归档