使用 jQuery 向 table 行动态添加 ID?

Dynamiacally adding an ID to a table row using jQuery?

我正在使用 jsgrid 在 Web 应用程序中创建玻璃数据网格,现在需要为每一行添加一个 ID,以便可以选择一行并将键值传递到后端。

我尝试使用下面显示的 id 的代码,我已经设法确认每​​个 fieldData 记录的值都存在(这是保存行数据的对象。) 该函数运行一个 for 循环,使用变量 iRDG2 循环遍历 table 行和 URN 与唯一参考号相关的密钥对;

$('tbody').children()[iRDG2].attr('id', fieldData[iRDG2].URN);

不幸的是,浏览器中的 JS 引擎告诉我对象不支持 属性,可能是因为行中包含单元格。

非常感谢任何指导。

您可以像下面这样修复您的代码:

$('tbody').children().eq(iRDG2).attr('id', fieldData[iRDG2].URN);

但是如果您使用外部代码更改行,您应该确保它在 onRefreshed 回调中完成。因为网格内容会被刷新,所以id会丢失

可能更好的选择是使用 rowClass 选项为每一行分配唯一的 class,例如:

rowClass: function(item, itemIndex) { return "row-" + item.ID },

因此您可以通过此 class 引用一行:$(".row-123")

感谢所有建议,但我最终选择了一条路线,其中该行使用该行的第一个子项的值更新了一个变量,而不是第一次工作