我们在jqgrid 4.3中使用了以下代码。现在我升级到4.13.6。下面的代码在4.3中工作,但在4.13中,它返回false ...任何帮助请...
var grid = $("#myGrid").jqGrid('getRowData');
$.each(grid, function(key, value) {
selectedRow = key+1;
var rowData = $("#myGrid").jqGrid('getLocalRow', selectedRow);
});
填充网格时我没有使用任何ID。数据类型:json,rownumbers:true。
当我调试时,我看到每行的ID是'jqg41','jqg42'等等......有时它是'jqg61','jqg62'等...这是一个随机数,后面追加了'jqg'
更多代码(但未完成的代码)
$grid.jqGrid({
datatype: 'json',
url: 'myUrl/byFileId.do?custId='+custId,
mtype: 'GET',
ajaxSubgridOptions: { async: false },
colNames:[ col1, col2 ...],
colModel:[
. . .
. . .
. . .
],
headertitles:true,
rowNum:999,
rowList:[],
pager: '',
records: 1000,
pgbuttons : false,
viewrecords : false,
pgtext : null,
pginput : false,
gridview:true,
ignoreCase:true,
rownumbers:true,
sortname: 'invdate',
viewrecords: true,
sortorder: 'desc',
multiselect: true,
caption: "Customer Search Result",
height: '100%',
editurl: 'clientArray',
autoencode: true,
loadonce: true,
multiselectWidth: 30,
width: rmtPageTitleWidth,
viewsortcols : [true,'vertical',true],
onSortCol: function (index, idxcol, sortorder) {
rowIdAndNoOfRowPair = [];
if (this.p.lastsort >= 0 && this.p.lastsort !== idxcol
&& this.p.colModel[this.p.lastsort].sortable !== false) {
$(this.grid.headers[this.p.lastsort].el).find(">div.ui-jqgrid-sortable>span.s-ico").show();
}
},
答案 0 :(得分:0)
你可以使用
var localData = $("#myGrid").jqGrid("getGridParam", "data");
将所有本地数据作为数组获取。它是对jqGrid的内部数据的引用。
更新:如果网格已排序或已过滤 本地,并希望以相同顺序从所有行获取数据,那么您应该获得lastSelectedData
参数而不是data
。您可以通过jqGrid的forceClientSorting: true
参数loadonce: true
从服务器加载后在本地强制对数据进行排序。
示例https://jsfiddle.net/OlegKi/akv51mdq/在本地数据的情况下演示lastSelectedData
,其中没有ID信息。另一个演示https://jsfiddle.net/OlegKi/Ljejoh21/对从服务器一次加载的数据执行相同的操作。