2

我正在构建一个 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();
            }
        });

任何帮助/建议表示赞赏。

提前致谢 !

4

1 回答 1

1

据我所知,您可以检查一下:ASP.NET MVC 4 - Ajax.BeginForm and html5

也许这个(你可以在这里得到一两个想法):MVC4 - Ajax.BeginForm and Partial view give 'undefined'

于 2013-03-07T07:00:15.813 回答