成功函数等效于mvc中的httppost

时间:2015-04-09 09:12:02

标签: ajax asp.net-mvc

当我在MVC中使用success function而不是ajax调用时,[HttpPost]的等价物是什么

在ajax中,为了在MVC中调用控制器,我使用类似

的东西
 $.ajax({
                url: '@Url.Action("SomeConroller", "ActionName")',
                dataType: 'html', //be sure to use html dataType
                contentType: 'application/json; charset=utf-8',
                success:someFunctionName

            });

我停止使用ajax调用并开始使用ajax并开始使用[HttpPost],以便所有input type="submit"都会出现,我将处理要完成的事件。

现在有一个场景,我选择并将项目移动到不同的列表,在完成后我正在做this.RedirectToAction("ActionName", "ControllerName");

问题是,一旦完成,我怎么能警告它被移动了?如果它是ajax我会在成功函数中处理它。我在哪里可以处理这个问题?

1 个答案:

答案 0 :(得分:0)

由于您要重定向到另一个操作,页面将刷新。如果要在新页面上显示警报,操作视图可以显示传递给视图的数据。

所以这样的事情应该提供传递给视图的动作数据:

return RedirectToAction("TargetAction", "Controller", new {id = userId});

" TargetAction"将准备一个视图模型对象并返回一个包含视图模型的视图:

        return View(viewModel);

视图将具有显示带有自定义文本的警报的逻辑。例如。如果你想在加载时显示javascript警报,只需定义

$(document).ready(function () {
    alert("Item moved: " + '@Model.Id');
});