使用jqgrid。在交换第一列(作为rowid)和任何其他列然后重新加载它之后,rowid会自动更改为交换列之后的值

时间:2010-11-17 08:32:45

标签: jqgrid

如标题

我需要在从json数据格式加载后添加一些细节,但是在我交换两列(一个是第一列用作rowid)之后,'checkId'不再是rowid。在setRowData方法中,如果交换列的每一行的值都相同,则无法识别每一行。

我只是jqgrid的初学者,我错过了什么吗?

像这样的jqgrid:

colModel:[
    {name:'checkId',index:'checkId', width:80, key:true},
    {name:'mobjName',index:'mobjName'},
    {name:'sabilityName',index:'sabilityName'},
    ...

gridComplete: function(){
 var _ids  = jQuery("#my_grid").jqGrid('getDataIDs');
 $(_ids).each(function(i, n) {
        var row = jQuery("#my_grid").jqGrid('getRowData', n);
        var _optcolstr = ...
 ...do something.
 jQuery("#my_grid").jqGrid('setRowData', n, {optcol: _optcolstr});

});

1 个答案:

答案 0 :(得分:0)

documentation对应setRowData的使用语法应该如下:

jQuery("#my_grid").jqGrid('setRowData', n, row , {optcol: _optcolstr});

jQuery("#my_grid").jqGrid('setRowData', n, false, {optcol: _optcolstr});

如果您不想修改行数据,只更改名称为optcol的某些css属性。