解决方法
我不得不通过文档挖掘出一些解决方案,在原始环境中看到这一点:
jqGrid Data Manipulation,特别是末尾附近标题为“用户数据”的部分.
首先,修改你的jsonReader实现如下:
jsonReader: { root: 'Data',page: 'Page',total: 'Total',records: 'Records',userdata : 'Data',repeatitems: false,id: 'Id' }
注意userdata选项设置为与根“Data”相同
在我的情况下,当用户选择一行时,我需要检索原始的行数据.我实现了如下:
onSelectRow: function(rowid) { processRow(rowid); }
var rowData = $("#resultGrid").getGridParam('userData')[rowId - 1];
其中#resultGrid是对我的jqGrid的引用.
然后,在应用任何格式化之前,这将返回绑定到该行的原始数据.
几点要注意:
>在我的情况下,网格被分页,所以结果集永远不会超过10个项目,因此’userdata’不会变得太大>排序是在服务器端进行的,因此索引rowId将始终从“userData”返回正确的值>虽然在jsonReader中作为选项引用的’userdata’都是小写字母,要使用getGridParam来检索它,您需要将其引用为“userData”