在jqgrid表的每一行上设置数据属性

时间:2013-08-16 19:56:34

标签: jqgrid

我正在使用jqGrid,我正在尝试为每个tr添加一个数据属性。我正在触发loadComplete事件,但我不确定如何修改每一行。任何代码示例?

2 个答案:

答案 0 :(得分:13)

您可以使用rowattr为<{1}}元素分配任何其他属性(有关代码示例,请参阅the answerthis one)。例如,您可以使用

<tr>

将完整输入行数据保存为rowattr: function (rd) { return {"data-mydata": JSON.stringify(rd)}; } 属性。我建议您使用data-mydata gridview:true`选项以获得最佳性能结果()

The demo使用上面rowattr``in combination with cade,你可以看到网格行有额外的rowattr属性:

enter image description here

答案 1 :(得分:0)

在我的情况下,我通过标识设置第一列网格。在我的所有情况下,我的网格的每个数据行的id都是该标识列的值。

jqGrid专栏:

colModel: [
{
name:'ID',
label:'...',
width:1,
index:'ID'
...

呈现:

<tr role="row" id="10777" ... > // in retrieved data: ID = 10777

所以,如果你有类似我的类似声明,这对你来说可能是一个有用的选择器,你可以简单地将你的数据属性添加到这些行中:

$('#trId').prop('data-whatever', 'value');

如果您希望自动对所有行执行上述行,您应该稍微更改它并将其放入网格的gridComplete事件中:

gridComplete: function() { $("tr[role='row']").prop('data-whatever', 'value'); }