2

ASP.Net MVC ビューに jqGrid があります。行にインライン編集を行っているときに、ページ上の非表示のテキスト コントロールの値を追加のパラメーターとして jqGrid メソッドに渡すために使用したいと考えています。

これを行うために、jqGrid で postData 属性を使用しています。

Javascript:

$('#tblLines').jqGrid({

    ...

    postData: {MyId : $('#MyId').val()}

    ...

    }

MVC:

public ViewResult EditModifyLine(string id, string quantity, string MyId)

問題は、jqGrid が editUrl のコントローラーに行う POST 中に投稿されないことです。私の行の値はそれを構成していますが、最後のパラメーター MyId は常に null です。Firebug をチェックしたところ、POST が最初の 2 つの値のみを送信していることを確認しました。

何か案は?グリッドのインライン編集中に postData 値を送信することはできますか?

4

5 に答える 5

3

使用する :

postData: {MyId :function() { return $('#MyId').val();}
于 2012-06-21T12:31:41.040 に答える
1

すべきではないと思います。postData は、レコードをフェッチするときに送信されます。私の推測では、代わりにbeforeSubmitCellを処理し、そこに送信されるオブジェクトを操作する必要があります。

于 2009-09-01T19:44:08.230 に答える
0

postDataと呼ばれるものがあります。たとえば、クライアントでそれを操作し、URLGetパラメーターの形式でサーバーにカスタムデータを送信できます。

私はここでうまくいくはずのstackoverflowで何かを見ていると思います:

jqgriduserDataは更新時にnullを投稿します

ちなみに、私たち(jqGridの背後にいるTrirand)は、ASP.NET WebFormsおよびMVC固有のサイトで、例を使用して作業しています。スタンドアロンのASP.NETサーバー側コンポーネント(GridViewと同様)もほとんどコードレスで動作します。 jqGridを使用します。

ここで私たちの仕事のアルファを見ることができます: jqgriduserDataは更新時にnullを投稿します

于 2009-09-12T05:49:34.380 に答える
0

これを実際に機能させるには、いくつかの悪い経験がありました。私の回避策 (ありがたいことに、正当な UI アプローチとして受け入れられました) は、行選択に保存ボタンとキャンセル ボタンを提供することでした。

jqGrid の saveRow メソッドを使用すると、投稿用に行固有のデータを挿入できます。それを調べることをお勧めします。

于 2009-09-04T18:45:50.330 に答える