我正在构建一个ASP.Net Mvc 4应用程序。我看到我可以使用@ Ajax.BeginForm异步执行POST请求。 API似乎也有一个OnSuccess和On Failure参数,它接受javascript函数在成功/失败时执行。我已经读过这适用于MS Ajax,但这对jquery也适用吗?我似乎无法单独使用jquery
@using (Ajax.BeginForm("Create", "Comment", null, new AjaxOptions
{
InsertionMode = InsertionMode.Replace,
HttpMethod = "Post",
OnSuccess = "people.successfulSave",
OnFailure = "people.saveFailure"
},
如果没有,我想通过表单提交jquery来做。目前我在做
$('#commentSubmitInput').click(function() {
$("#commentForm").submit();
}
提交表格。但是在我的控制器中,我正在做一些模型验证,如果模型无效,则返回带有模型错误的Html,否则返回带有更新的html的局部视图。现在我读到我可以使用以下语法将ajax调用绑定到函数
$("#commentForm").bind('ajax:complete', function () {
alert('bla');
});
但是,有没有办法我可以成功和失败回调表单提交?有点像Jquery ajax调用语法
$.ajax({
url: $(this).attr('ajaxUrl'),
type: 'POST',
success: function (data) {
$("#comment_" + data.Id).remove();
},
error: function (data) {
window.location.reload();
}
});
感谢任何帮助/建议。
提前致谢!
答案 0 :(得分:1)
据我所知,您可以查看:ASP.NET MVC 4 - Ajax.BeginForm and html5
也许这个(你可以在这里得到一个或两个想法):MVC4 - Ajax.BeginForm and Partial view gives 'undefined'