在我的主页面上,我分配了四个不同的$ _SESSION变量,如下所示: -
<p class="p-wht space left">Working: <? echo $_SESSION['Working'] ?></p>
<p class="p-wht green space left">Clear: <? echo $_SESSION['Clear'] ?></p>
<p class="p-wht red space left">Busy: <? echo $_SESSION['Busy'] ?></p>
<p class="p-wht cyan space left">STC: <? echo $_SESSION['STC'] ?></p>
页面加载时设置: -
include('status.controller.php');
并将它们设置为:
$_SESSION['Working'] = $status['Working'];
$_SESSION['Clear'] = $status['Clear'];
$_SESSION['Busy'] = $status['Busy'];
$_SESSION['STC'] = $status['STC'];
它们在页面刷新或首次加载时更新,但是当我尝试使用AJAX更新它们时,值似乎没有变化。
我试过了: -
$(function(){
setInterval(function(){
$.ajax({
url:'scripts/php/status.controller.php',
success:function(data){
if(data == "scripts/php/status.controller.php"){
}else{
alert(data);
//location.reload();
}
}
});
},4000);
});
但似乎没有更新这些值。它仅在页面完全重新加载时更新值,包括我不想使用的location.reload();
。
有什么想法吗?
ADDED; status.controller.php文件的内容;这是这个文件的内容; nathandasilva.co.uk/status.controller.txt
答案 0 :(得分:0)
你能告诉我, scripts / php / status.controller.php 页面的输出是什么。如果页面将html作为输出发送,那么您应该只替换内容,例如:
<div id="content">
<p class="p-wht space left">Working: <? echo $_SESSION['Working'] ?></p>
</div>
<script>
$(function() {
setInterval(function(){
$.ajax({
url:'scripts/php/status.controller.php',
success:function(data) {
$("#content").html(data);
}
});
},4000);
});
</script>