在学习了多年的 ASP.NET 之后,我终于开始尝试并尝试学习 MVC。
我习惯使用 asp.net AJAX PageMethods,您可以传递一个对象,该对象会自动解析为该方法中参数的任何类型。
Javascript:
PageMethods.AddPerson({First:"John",Last:"Doe"});
隐藏代码:
[WebMethod]
public static Result AddPerson(Person objPerson)
{
return Person.Save();
}
如何使用 MVC 和 jQuery 做到这一点?
只需发送字符串并将 json 解析为对象吗?
最佳答案
这取决于您的表单数据的复杂程度。让我们使用 jQuery 示例:
$.ajax({
url: '\Persons\AddPerson', // PersonsController, AddPerson Action
data: { First: "John", Last: "Doe" },
type: 'POST',
success: function(data, status)
{
alert('Method called successfully!');
}
});
所以我们发布两条数据。如果 Person 类有两个名为“First”和“Last”的属性,那么默认的 ASP.NET MVC Model Binder 将此表单数据放入这些属性中应该没有问题(其他所有内容都将是默认的)。
当然,您始终可以为 Person 类型创建自定义模型绑定(bind)器,然后您可以采用所需的任何形式值并将它们放入任何属性中,或者调用其他类型的逻辑。
关于asp.net-mvc - 如何使用 MVC 和 jQuery AJAX 传递对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2723456/