我在这里发现了类似但不相同的问题;他们发布的答案都没有解决这个问题。
我使用addJSONData
. 当您单击列标题进行排序时,网格将被擦除。Web 控制台/firebug 中没有错误。稍后调用添加的数据addJSONData
至少按所选列排序。
我的配置:
jQuery('#attributes').jqGrid({
sortable:true,
datatype:"local",
colNames: cols,
colModel: colmods,
cmTemplate: {width:155, align:"left"},
multiselct: false,
shrinkToFit:false,
caption: "Node Attributes",
scroll: true,
footerrow: true,
userDataOnFooter: true,
rowNum: -1
});
我唯一的想法是保存数据onSortCol
并将其重新加载到loadComplete
. 不过我不太喜欢这样。我尝试了rowNum: 9007199254740992
,loadonce: true
和其他的各种组合。
我已经尝试过 jqGrid 版本 4.2.0 和 4.4.0 (rowNum: -1
再次支持)。
编辑:清除数据的行是emptyRows
sortData 函数中的位:
if(ts.p.scroll) {
var sscroll = ts.grid.bDiv.scrollLeft;
emptyRows.call(ts, true, false);
ts.grid.hDiv.scrollLeft = sscroll;
}
似乎应该在这种情况发生之前保存数据,但我不熟悉此代码以了解数据的实际位置。