我在名为“property.php”的文件中有以下内容
$("#nav-login").click(function() {
//show login popup
return false;
});
$("#prop-add-fav").click(function() {
<?php if (!isset($_SESSION['LoggedIn'])) { ?>
justfavorited = "<?php echo $listing['MLSNumber']; ?>";
//show login popup
return false;
<?php } ?>
以下文件名为“login-popup.js”
$("#pl-login-button").click(function() {
email = $("#pl-email").val();
password = $("#pl-password").val();
if (justfavorited != null) {
$.ajax({
type: "POST",
url: "login-check.php",
data: "email="+email+"&password="+password+"&justfavorited="+justfavorited,
success: function(html){
if (html == "logged in") {
window.location.reload();
}
},
beforeSend: function(){
$("#pl-loading").show();
}
});
}
else {
$.ajax({
type: "POST",
url: "login-check.php",
data: "email="+email+"&password="+password,
success: function(html){
if (html == "logged in") {
window.location.reload();
}
},
beforeSend: function(){
$("#pl-loading").show();
}
});
}
return false;
});
如果我把“if(justfavorited!= null)”if / else阻塞,并且第一个ajax调用(只留下第二个,没有justfavorited变量),代码工作正常。代码应该弹出登录框并发送一个额外的变量,具体取决于用户在注销时是否单击了“登录”按钮或“添加到收藏夹”按钮。
但是,当我点击“登录”链接时,当前正在发生的事情是if / else语句发生了一些事情(一个错误)并且页面加载了链接(即返回false;没有被调用)。但是如果我在登出时单击“添加到收藏夹”,登录工作正常。