阅读完这个主题的主题后,我仍然陷入困境。
由于某种原因,仅在手动重新加载页面时才会调用函数'raat'。如何让跨度自动刷新?
<span id="sn1"></span>
<script>
function raat() {
var sesh = <?php echo json_encode($_SESSION['customer_id']); ?>;
var vx = document.getElementById("sn1");
if ( sesh > 0) {
vx.innerHTML='<li><a href="J05.php" target="iframe_m">Edit Account Info</a></li>';
} else {
vx.innerHTML='';}
}; /* end raat */
window.onload=raat();
setInterval( raat, 3000);
</script>
答案 0 :(得分:2)
你正在调用raat并将其返回的内容分配给onload
window.onload=raat();
需要
window.onload=raat;
希望您意识到<?php echo json_encode($_SESSION['customer_id']); ?>;
不会继续更新,因为它仅在呈现页面时添加,因此值将相同。如果要在更新时获取信息,则需要对服务器进行Ajax调用以获取数据。
答案 1 :(得分:1)
也许这也是(在另一个等待onload时将interval
设置为关闭看起来很混乱
window.onload= function() {
raat();
setInterval( raat, 3000);
};
答案 2 :(得分:0)
您可以使用addEventListener
修复它:
window.addEventListener("load", function(){
raat();
});