0

jqGrid のページを x に設定する方法を探しています...

私の使用例は、誰かが私のグリッドを使用していることです...彼らは患者をクリックしてその患者を編集します(私はjqGridsモーダル編集画面を使用していません...すでに多くのモーダルウィンドウに)...

彼らがその患者に対して行ったことを保存するとき、ブラウザーをリダイレクトして、その患者をクリックした画面に戻し、同じページに戻りたい...

心に留めておくべきこと。

asp.net MVC4 を使用しています。アクション メソッドを介して最初のページを呼び出します。私のグリッドの url 変数は、同じコントローラーの別のアクションです。そのアクションは、ページと行の変数を送信するものです。これはできると確信していますが、それを達成する方法がわかりません。これまでのところ、jqGrid を呼び出す前に、document.ready でページ変数と行変数を設定しようとしました...

            tbl.jqGrid({
                loadBeforeSend: function () {
                    page: pageFromTemp;
                    rows: rowFromTemp
                }
            });

基本的に私はそれを行うためにさまざまな方法を試しました。上記はそのほんの一例です。document.ready でグリッドをリロードしようとしました。しかし、それは意味がありません。必要なパラメーターを何も与えていないのに、グリッドをリロードするのはなぜですか...

beforeRequest イベントで変数を設定しようとしました。私はそれを試して設定する機能を持っています...

            beforeRequest: function () {
                if ((rowFromTemp != "") && (pageFromTemp != "")) {
                    $(this).trigger('reloadGrid', [{ page: pageFromTemp, rowNum: rowFromTemp, url: '/Encounters/GetAjaxPagedGridData/' }]);
                    //$.extend($(this).setGridParam({ page: pageFromTemp })),
                    //$.extend($(this).setGridParam({ rowNum: rowFromTemp })),
                    //$.extend($(this).setGridParam({ url: '/Encounters/GetAjaxPagedGridData/' }))
                    //$.trigger('reloadGrid', [{ page: pageFromTemp, rowNum: rowFromTemp, url: '/Encounters/GetAjaxPagedGridData/'}]);
                }
            },

しかし、それもうまくいきません。私は明らかに何かが欠けています。私は何を間違っていますか...

loadComplete と $("frTable").trigger({}) を使用して正しいページに変更するようにしました

しかし今、まだデータをロード中であることを示す点滅するロード画面が表示されています...コードにブレークポイントを設定すると、データがロードされていることを確認できます。私はここで何かをしていません。

ここに画像の説明を入力

4

1 に答える 1

0

グリッドをドキュメントの準備ができた状態でロードし、データ型をに設定しlocal、URLを割り当てずに、非表示にします。ロードする場合は、パラメータを設定してからロードをトリガーし、ユーザーに表示します。

于 2013-03-02T01:57:00.013 に答える