gpt4 book ai didi

javascript - ajax脚本不更新信息

转载 作者:太空宇宙 更新时间:2023-11-03 11:47:47 25 4
gpt4 key购买 nike

我正在尝试制作一个 ajax 脚本来自动刷新用户在我的网站上拥有的游戏内货币数量,但是它不起作用。我对 ajax 不是很好,所以我肯定做错了什么,如果有人能帮助我,我将不胜感激。

这是我的代码:

Javascript

<script type="text/javascript">
(function($) {
$.ajaxSetup({
cache: false,
beforeSend: function() {
$('#money').show();
},
complete: function() {
$('#money').show();
},
success: function() {
$('#money').show();
});
var $container = $("#money"); $container.load("challenges.php?money=<?php echo $_SESSION['Money'];?>");
var refreshID = setInterval(function() {
$container.load("challenges.php?money=<?php echo $_SESSION['Money'];?>");
}, 1000);
});
})(jQuery);
</script>

PHP 部分

<?php
echo "<div id='money'>Balance: $".$_SESSION['Money']." ||</div> ";
?>

$_SESSION['Money'] 等于用户的金额。多年来,我一直在努力解决这个问题。如果您需要更多信息,请告诉我。我想这样做,这样用户就不需要刷新页面就可以看到他们的余额。我试图按照其中的一部分教程进行操作,但是我迷路了,而且我对 ajax 真的不擅长。非常感谢任何帮助。

最佳答案

$.load() 可以接受一个可选的回调参数,参见 http://api.jquery.com/load/

你可能想这样做:

(function($) {
var $container = $("#money");

function do_load(){
$container.load("challenges.php?money=<?php echo $_SESSION['Money'];?>", function(){
// show the container when loading is complete
$container.show();
});
}

do_load();
var refreshID = setInterval(do_load, 1000);
})(jQuery);

完全重写并假设 PHP 将返回 JSON:

HTML:

Balance: <span id="money"></span>

JS:

(function($) {
var $container = $("#money");

function do_load(){
$.ajax({
method: "POST",
url: "challenges.php?money=<?php echo $_SESSION['Money'];?>",
}).done(function(data) {
// write the value of balance to the container
console.log("Server returned:", data);
$container.html(data);
}).error(function( jqXHR, textStatus, errorThrown ){
console.log("Server returned an error:", textStatus, errorThrown );
console.log("jqXHR:", jqXHR);
});
};

do_load();
var refreshID = setInterval(function(){
do_load();
}, 1000);

})(jQuery);

PHP:

<?php
// @TODO: fill your session variable (from a file / database / ...)
$_SESSION['Money'] = rand(0, 100000);
echo $_SESSION['Money'];
?>

关于javascript - ajax脚本不更新信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37603325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com