(フリー)jqGridは、グリッドがロードされる前にpostData
を設定できるコールバック関数を提供しますか?グリッドを再読み込みせずにpostdataを設定するコールバック?
私の場合、でjqGridを使用しているので、擬似postData
です。 グリッドにフィルタを適用するのにpostData
を使用しています。私はこのデータをajax呼び出しで読み込みます。
サーバーからすべてのグリッドデータを一度に読み込みたいのですが、ローカルにフィルタを適用します。したがって、ユーザーがこれらのフィルタを変更すると(たとえば、ツールバーの検索/フィルタリングを使用して)、ローカルデータに適用されます。
私はすでに試してみました:コールバック関数でも
beforeInitGrid : function()
{
$("#grid").jqGrid('setGridParam', {
search: true,
postData : {"toolbar":[{"name":"customer","value":"difranco"}],"postdata":{"_search":"true","nd":"1461054190117","rows":"30","page":"1","sidx":"my_date","sord":"asc","totalrows":"10000","filters":"{\"groupOp\":\"AND\",\"rules\":[{\"field\":\"customer\",\"op\":\"cn\",\"data\":\"difranco\"}]}"},"sortname":"my_date","sortorder":"asc","page":"1","rowNum":"30"}
});
}
:gridComplete
、loadComplete
。 と私はpostData
パラメータを直接jqGridに設定しようとしました。
.trigger("reloadGrid")
でリロードせずに動作しませんでした。
ありがとうございました!
問題を正しく理解しているかどうかはわかりません。サーバーが* 'filters'パラメータを解釈し、フィルタリングされていないデータを返す代わりに* filtered *データを返すという問題がありますか?そうでなければ、グリッドの作成中にpostData.filtersを直接設定し、 'loadonce:true、forceClientSorting:true'を使用するだけです。 Free jqGridは返されたデータをフィルタリングし、そこでソートして最終結果の最初のページを表示します。 'reloadGrid'は必要ありません。 – Oleg
@Olegいいえ、私のサーバスクリプトはフィルタを解釈しません。私は作成時に 'postData'をどのように設定するのか分からないと思います。私は 'forceClientSorting'について知らなかった。 –