function check_login(){
var authenticated = false;
$.ajax({type:"POST",url:"/account/islogin/",data:"",async:"false",
success:function(data){
if(data=="null"){
signup();
authenticated = false;
}
authenticated = true;
}
});
return authenticated;
};
为什么函数总是返回
false
,甚至执行authenticated=true
。 最佳答案
问题是您运行if语句,然后每次都将authenticated设置为true。听起来您正在寻找if else语句。
function check_login(){
var authenticated = false;
$.ajax({type:"POST",url:"/account/islogin/",data:"",async:false,
success:function(data){
if(data=="null"){
signup();
authenticated = false;
} else {
authenticated = true;
}
}
});
return authenticated;
};
甚至更好,您可以将身份验证设置为默认为true,然后仅在数据为null时将其设置为false。
function check_login(){
var authenticated = false;
$.ajax({type:"POST",url:"/account/islogin/",data:"",async:false,
success:function(data){
authenticated = true;
if(data=="null"){
signup();
authenticated = false;
}
}
});
return authenticated;
};