Может ли jQuery сделать POST ViewModel для контроллера в ASP.NET MVC? - PullRequest
9 голосов
/ 21 июля 2009

Мои текстовые поля HTML созданы так, что они будут привязаны к пользовательской модели представления при повторной публикации на сервер.

<%= Html.TextBox("CustomerFormViewModel.Email")%>

Это прекрасно работает, если это традиционный POST. Затем я могу получить его на стороне контроллера примерно так:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AddCustomer(CustomersFormViewModel model)
{
     //validate data, save customer, handle validation errors...
}

Я хочу знать - возможно ли выполнить POST через jQuery и при этом получить такое же поведение?

Ответы [ 2 ]

16 голосов
/ 21 июля 2009

Возможно, нет никакой разницы между «традиционным POST» и «AJAX Post». Например:

$.ajax({ type: "POST",
    url: '<%= Url.Action("AddCustomer", "Customer") %>',
    data: $('form').serialize(),
    success: function(data, textStatus) {
    }
});
4 голосов
/ 21 июля 2009

Если я вас правильно понимаю, думаю, это довольно просто

var formData = $("#form").serialize();

$.post("path/to/action", formData, function(data) { //success } );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...