Can jQuery do a POST of a ViewModel to a Controller in ASP.NET MVC?

自闭症网瘾萝莉.ら 提交于 2020-01-10 14:15:16

问题


I have my Html Textboxes created so that they will be bound to a custom view model when posting back to the server.

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

This works great if it's a traditional POST. I can then receive it on the Controller side with something like this:

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

I want to know -- is it possible to do the POST via jQuery and still get the same behavior?


回答1:


It is possible, there is no difference between a "traditional POST" and "AJAX Post". For example:

$.ajax({ type: "POST",
    url: '<%= Url.Action("AddCustomer", "Customer") %>',
    data: $('form').serialize(),
    success: function(data, textStatus) {
    }
});



回答2:


If I understand you right, I think it's pretty simple

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

$.post("path/to/action", formData, function(data) { //success } );


来源:https://stackoverflow.com/questions/1160669/can-jquery-do-a-post-of-a-viewmodel-to-a-controller-in-asp-net-mvc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!