从Ajax表单帖子中重定向

时间:2009-05-08 18:08:55

标签: asp.net-mvc ajax forms post redirect

我有一个动作方法,根据某些条件需要通过ajax返回局部视图,或重定向到另一个Controller / Action。返回正确的视图,但它将它放在Ajax表单UpdateTargetId中,而不是重定向到一个全新的页面。任何人都知道如何才能做到这一点?

2 个答案:

答案 0 :(得分:16)

我想我会重构这个以使用jQuery而不是MVC Ajax。 jQuery将为您提供更多的控制权,让您可以更好地控制自己可以使用的结果。如果这不是一个选项,您可能需要查看OnComplete回调并查看传递给它的数据,看看是否有办法获取您想要从中重定向到的URL。

另外,我似乎记得如果你返回一个JavaScriptResult,它将执行它,无论如何调用AJAX。你可能想尝试类似的东西:

return JavaScript( "window.top.location.href ='" + Url.Action( "Action" ) + "';" );

答案 1 :(得分:1)

可能这个link可以帮助您解决问题,并插入您的javascript以将当前页面更改为其他控制器,例如

window.location = 'controller/action';