我有以下jQuery:
$.ajax({
type: 'POST',
url: "MyController/MyAction",
data: $("form").serialize(),
dataType: "json"
});
这是MyAction:
if(ModelState.IsValid)
{
return RedirectToAction("OtherAction", new {id = 5});
}
我在三个不同的地方进行了此设置(三种不同的操作)。在两个动作中我可以重定向就好了。但是在一个动作中我无法重定向。什么都没发生,我只是呆在同一页上。我逐步执行了我的代码,MyAction
中的所有行都被点击了,但OtherAction
中的断点从未被击中。
我应该做些什么特别的事吗?在我正在/从相同控制器发布的两个实例中。在上面的实例中,jQuery位于HomeController
下MyController
答案 0 :(得分:1)
这不会影响主页面,因为重定向到操作只会执行重定向并将重定向的响应返回给Ajax调用。
发出ajax请求的页面不会被重定向,因为响应只是被视为任何其他响应。只有一个额外的步骤(重定向)来获得AJAX结果。
如果您希望重定向主页面,可以在回调中处理ajax请求