0

ここで同様の質問を見つけましたが、同一ではありません。投稿された回答のどれもこれを解決しません。

を使用してローカル データをロードし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;
        }

これが発生する前にデータを保存する必要があるようですが、データが実際にどこにあるのかを知るためにこのコードに精通していません。

4

2 に答える 2

0

同様の問題がありました。しかし、私は修正に出くわしました。loadonce: true を設定した後、ページャーの更新ボタンを押して並べ替えを試みると、正常に動作します。

だから私は次のようなことをして更新ボタンをクリックさせます:$(".ui-icon-refresh").trigger('click');

これは私の要件に合っているため、onClose イベントで実行しました。ここで、この問題に関する私の説明全体を確認できます: Make 'Search' remote and all other all (sorting, pagination, etc) in jqGrid

于 2012-08-27T17:51:16.810 に答える
0

私はjqGRidの初心者です(3日前に使い始めたばかりです...)が、ローカルを使用している場合、ソートとページングが機能するためにloadonce:trueも指定する必要はありませんか?

于 2012-08-20T02:15:03.753 に答える