0

ビューモデルに自動バインドするサーバーにフォームをシリアライズしています。ただし、サーバーにさらに2つのパラメーターを送信したいが、方法がわからない

public ActionResult Test(MyViewModel vm, DateTime date, bool isSomething)

私のajax呼び出しの「データ」パラメータがどのように見えるべきかわかりません

   data: { 'vm':  frm, 'date': date, 'isSomething': true }, // this does not work.

通常、私はちょうどこれをしただろう

   data: frm,

私のコードは準拠しており、javascript エラーはありませんが、すべての frm に「vm」を追加し、サーバー上でそれをバインドする方法がわかりません。基本的に、json キーがバインドを台無しにしています。

私がする時

data: frm  // result of items look like this Id 7b97dcc7-3f8d-4cc0-ad2a-a104010f683d

私がする時

data: {'vm' : frm} // result looks like this vm[0][name]    Id

いくつかの方法で送信する必要があるため、キーが必要です。

4

1 に答える 1

0

アクション メソッドに構文エラーがあります

public ActionResult Test(MyViewModel, vm, DateTime date, bool isSomething)

する必要があります

public ActionResult Test(MyViewModel vm, DateTime date, bool isSomething)

これを jquery ajax 呼び出しに追加することもできます

data: { 'vm':  frm, 'date': date, 'isSomething': true },
traditional: true

これにより、「従来のスタイルの param シリアライゼーションを使用する」ことができます。

于 2012-11-10T03:41:10.273 に答える