How to pass model in a ajax call to a method ??
Form MVC 3 or MVC 2 the objs passed in the form of json are automatically converted model format if the model of that type of object exists.
Example
Let say we have a model 'Customer'
Public class Customer
{
public int CustomerID {get; set;}
public string CustomerName {get; set;}
public string CustomerAddress {get; set;}
}
Here we have a model 'Customer' with 3 attributes ID, Name, Address.
Now we need to have a Get method and a post method
public ActionResult Index()
{
return View("");
}
[HttpPost]
public ActionResult Index( Customer modelCustomer)
{
// Do your stuff here
return View ("")
}
Here i have two different Function in the above code one is the httpGet method this is used to call the view where as the other is used to call the post method form the view may be using Submit or using ajax calls.
here goes the code for ajax call
@model iEnumerable
@using (Html.BeginForm("Index", "Home" , FormMethod.Post , new {id = "form1"}))
{
@Html.TextBoxFor(x=> x.EmailAddress)
@Html.TextBoxFor(x=> x.Name)
}
-- Script --
$.ajax({
url : this.action,
type: this.method,
data: $(this).serialize(),// this will serialize the model in json format for the
success: function (result)
{
},
error: function(result)
{
}
});
Here we can see the function in ajax which sends the complete model to the HttpPost method .
feel free to comment about any queries, Thank you
Comments
Post a Comment