如果想使用控制器跳转到另一个页面需要注意什么?我调试时发现我的代码没有跳转,而是输出了整个页面的html?按理说ajax应该不会执行了,因为直接跳转到另一个页面了?
后端
public ActionResult LoginIn()
{
string message = string.Empty;
return RedirectToAction("Index", "Home");
}
前端: $.ajax({
url: "/Login/LoginIn",
method: "post",
data: {
"Username": loginData.Username,
"Password": loginData.Password
},
success: function (response) {
layer.close(index)
layer.msg(response.message, {icon:4});
},
error: function (response) {
layer.close(index)
layer.msg("响应服务器失败", { icon: 7 });
}
});
你这逻辑思维方式错了,要跳转页面,前端直接跳转目的页面就好,为什么还要用ajax异步? ajax不管怎么样都会执行完成,所以给你返回一个页面的html
你这是ajax请求,异步的; 不是表单提交;
那我在ajax那里加一个async:false,可不可以?
控制器和操作写反了:
return RedirectToAction("Home", "Index");
写对了也没用,我还是用前端跳转吧
@灬丶: 后台用 json的 Url.Action("Index", "Home") 返回url,前台用 window.location.href 跳转也行