我在2个场景中重定向到主页
退出功能代码......
$("#logoutLink").click(Logout);
function Logout() {
$.post("Logout",
{ antiCSRF: '{{acsrf}}',
session_id: '{{session_id}}'
});
alert("You are now securely logged out.");
window.location = './';
}
会话到期代码
function checksession() {
$.post("CheckSession",
{ antiCSRF : '{{acsrf}}',
session_id: '{{session_id}}'
},validateresult).fail(function() {alert("Session check failed")})
}
function validateresult(result){
if (result == "N"){
valid_flag = "N"
alert("Your session has been timed-out. Please click OK to be redirected to the login page to start a new session.");
window.location = './';
}
else { valid_flag = "Y";
return valid_flag
}
}
在第一种情况下即;当我点击退出按钮时,页面被重定向到主页面而没有任何问题......
但是在ajax调用期间执行的代码不起作用。 window.location无效..
不确定
之间有什么区别答案 0 :(得分:0)
ajax调用是异步的。您应该显示alert()并在回调函数中执行重定向,该函数在$.post()
完成后执行:
$("#logoutLink").click(Logout);
function Logout() {
$.post("Logout", {antiCSRF: '{{acsrf}}', session_id: '{{session_id}}'}, function() {
alert("You are now securely logged out.");
window.location = './';
});
}