ここで同様の質問を見つけましたが、同一ではありません。投稿された回答のどれもこれを解決しません。
を使用してローカル データをロードし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;
}
これが発生する前にデータを保存する必要があるようですが、データが実際にどこにあるのかを知るためにこのコードに精通していません。