那么Ajax.BeginForm()是MvcAjax还是Jquery?
默认情况下是jquery。您需要引用
jquery.unobtrusive-ajax.js脚本才能使其工作。
还是我将使用Html.BeginForm()并在Form的click事件上注册类似$ .post之类的东西。
那是另一种选择。我个人就是这么做的。
我认为这是正确的,我要发布到commentscontroller的create动作,并且我将使用JsonModelBinder将其转换为模型。之后,我将返回Json并将其添加到我的评论列表中…
JsonModelBinder已在ASP.NET MVC
3中引入,它允许您将JSON字符串发送到控制器 *** 作,该 *** 作将被映射回视图模型。例如,如果您具有以下视图模型:
public class PersonViewModel{ public string Name { get; set; } public int Age { get; set; }}
和以下 *** 作:
public ActionResult Foo(PersonViewModel person) { ... }
在AJAX中调用它的传统方法是:
$.ajax({ url: '@Url.Action("foo")', type: 'POST', data: { name: 'john', age: 20 }, success: function(result) { // TODO: }});
在ASP.NET MVC 3中,您可以发送JSON作为请求参数,该参数将绑定到
PersonViewModelaction参数:
$.ajax({ url: '@Url.Action("foo")', type: 'POST', contentType: 'application/json', data: JSON.stringify({ name: 'john', age: 20 }), success: function(result) { // TODO: }});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)