0

私は答えを探していて、何日も試してみましたが、まだうまくいきません。

サーバーにバインドされたグリッドがあり (一連のさまざまな理由により、Ajax バインディングを使用できません)、ユーザーが新しい行を編集または挿入するときに、次の 2 つのことを行う必要があります。

1. ページの非表示フィールドからすべての値を取得し、それらを int の配列に入れる必要があります。2. 行の挿入/更新時に、この配列をコントローラーに渡す必要があります。

今、ajaxバインディングを使用して、これを行う方法を見つけました。仕事をするクライアントイベントにjavaScript関数を設定しました。しかし、ほとんどのクライアントイベントはサーバーバインディングでは機能しないため、行き詰まっています。

onSave クライアント イベントはこれに最適ですが、サーバー バインディングでは機能しません。

Insert または Update で 1 つの変数を 3 番目のパラメーターとして渡すのは簡単ですが、私のケースはもう少し複雑で、機能させることができません。

.Insert("Insert", "Posudbe", new { })
.Update("Update", "Posudbe", new { })

したがって、基本的には、上記のコードの 3 番目のパラメーターでこれら 2 つのことを行う必要があります。

Tnx 4 答えがあれば。

4

1 に答える 1

0

onLoad JavaScript イベント (サーバー バインディングで動作する数少ないイベントの 1 つ) を使用して、クリック ハンドラーを「挿入」ボタンと「更新」ボタンにアタッチできます。ライブまたはオンのjQueryデリゲートを使用する必要があります。簡単な例を次に示します。

function onLoad() {
   $(this).delegate(".t-grid-update", "click", function() {
     // your code here
   });
}
于 2012-06-19T05:15:32.630 に答える