我们在jqgrid 4.3中使用了下面的代码。现在我升级到4.13.6。下面的代码在4.3中工作,但在4.13,它返回false ...任何帮助,请...free-jqgrid:getLocalRow在free中返回false -jqgrid4.13.6
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();
}
},
对不起,但你发布的代码是绝对错误的。如果'key'是rowid,那么'key + 1'不是。它做什么外壳?您是否需要获取**所选行的数据或网格的所有本地数据?为什么你不指定rowid?您使用哪些数据和哪个网格?顺便说一下,我在你之前的问题中回答了你的建议,在'customerId'列中设置'key:true'属性,通知jqGrid使用'customerId'列中的值作为rowid。 **你的代码仍然错误,你应该解释,应该怎么做。** – Oleg
我建议你阅读[文章](https://free-jqgrid.github.io/getting-started/index.html#the_first_grid ),我在那里解释什么是rowid。看到[图片](https://free-jqgrid.github.io/getting-started/index.html#grid-internal-div)和下面的解释。 – Oleg
@Oleg:在jqgrid 4.3中,'key'总是给我0,但行的id从'1'开始。这就是我为什么要做“key + 1”的原因,现在到第二个问题,我不能让客户id为key = true,因为我可以在网格中拥有多个相同id的客户。通过每一行(选择和非选择)并获取数据,然后我可以将这些数据的逻辑应用于JavaScript,然后发送到后端。现在我想知道为什么它创建行的id为'jqg <一些随机数> – SKumar