0

jQueryを使用してviewmodelを呼び出すコントローラーアクションメソッドにviewmodelを渡すことは可能ですか?現在、アクションモデルは空です。

コントローラ:

    [HttpPost]
    public ActionResult Action(MyModel model)
    {
        ProcessModel(model);

        return Json(new
        {
            Result = "result"
        });
    }

jQuery:

function Serve() {
    $.ajax({
        type: "POST",
        url: "/Controller/Action",
        dataType: "json",
        error: function (xhr, status, error) {
            //Handle errors here...
        },
        statusCode: {
            404: function (content) { alert('Cannot find resource'); },
            505: function (content) { alert('Status code: 505'); },
            500: function (content) { alert('Internal server error'); }
        },
        success: function (json) {
            alert(json);

        }
    });

ありがとうございました

4

1 に答える 1

1

api.jquery.com/serializeを使用してフォームデータをシリアル化すると、デフォルトのMVCモデルバインダーがフォーム値の厳密に型指定されたモデルへのマッピングを処理します。

これは、フォームフィールドが強く型付けされたHTMLヘルパーを使用して生成されるか、名前付きモデルのプロパティと一致することを確認する限り、うまく機能します。

@Html.TextBoxFor(model => model.PropertyName)

また

<input type="text" name="Model.PropertyName" />
于 2013-01-10T15:51:34.600 に答える