好吧,很多关于这个问题的回答文章都是关于POST之类的,但这不是因为这些原因。
我确实意识到我可以使用。load()函数,我有,它仍然缓存它的方式。它说,通过AJAX,他们有一个缓存属性,你可以设置为false,所以我切换了方法。然而,它们都产生相同的结果…
$.ajax({
url: "<?= $GLOBALS['SECURE_AREA']."inline/login_status.php?call_letters=$GLOBALS[call_letters]&t=".rand(100,999)."" ?>",
cache: false,
success: function (data) {
$("#user_info").html(data);
}
});
//$("#user_info").load("<?= $GLOBALS['SECURE_AREA']."inline/login_status.php" ?>");
url不存在。当我访问它时,它会正确显示我想要的结果。然而,这仍然显示了它给的第一次加载。而且不刷新,因为你登录后,内容改变了。它仍然在说"注册|登录"…不是"My Account"
有什么办法解决这个问题吗?AJAX和.load()方法对我来说都不起作用。
我可以提供一个替代方案-
使用PHP,你可以直接回显你需要的数据到页面中…例如
<?php echo <<<JS
$.ajax({
url: "'"".$GLOBALS['SECURE_AREA'] . "inline/login_status.php?call_letters=".$GLOBALS['call_letters']."&t=".time()."'"", // per @phpissuper01
cache: false,
success: function (data) {
$("#user_info").html(data);
}
});
JS;
?>
这将执行您的ajax,当它被放置,因为只有PHP可以访问$GLOBALS
变量,你可以回显你需要的东西。
此外,您的代码中有几个关于字符串连接的问题,这些问题导致了错误,这些问题在这个答案