使用AJAX的自动刷新不起作用
Automatic refresh using AJAX not working?
我的网站上有一个聊天功能,可以让两个用户互相聊天,我使用JavaScript、AJAX和PHP
目前,它不会自动刷新聊天区,除非我提交回复或刷新页面。我不明白为什么。
JavaScript函数
function checkReply(threadid) {
// XMLHttpRequest
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("chatwrap").innerHTML = xmlhttp.responseText;
setInterval(checkReply(threadid), 10000);
}
}
xmlhttp.open("GET","inc/chatreply.php?chatid="+ threadid,true);
xmlhttp.send();
}
事件处理程序在<div>
上,responseText将以结尾
<div id="chatwrap" onload="checkReply('.$threadid.')"></div>
$threadid
是设置在页面顶部的GET变量:
$threadid = (int)$_GET['chatid'];
更新
看到您已经处于PHP状态,语法是正确的。
问题是div
没有一个onload事件。您必须将它附加到body标记,或者在div的头部或下方包含一个脚本,因为它只会在div渲染后执行
您没有正确地包含PHP变量。此时,您正在将字符串.$threadid.
传递给checkReply
函数。在使用分隔符<?php & ?>
使用此语法之前,您必须再次进入PHP模式。
<div id="chatwrap" onload="checkReply(<?php echo $threadid; ?>)"></div>
这应该效果更好。
相关文章:
- 刷新页面时hasClass不起作用
- 刷新潜水内容不起作用
- PHP会话页面刷新不起作用
- 数据表刷新不起作用
- setTimeout刷新,毫秒参数不起作用
- 使用JQuery运行php并刷新页面是不起作用的
- HTML 不加载 CSS ,刷新后一切正常.同样在移动设备上,它在首次加载时不起作用
- 刷新<表单>送审不起作用
- PHP 强制下载并刷新解决方案不起作用
- 刷新页面后筛选器不起作用
- Jquery Mobile Onclick事件在刷新前不起作用
- 用javascript交换url后刷新类似facebook的按钮不起作用
- 锚链接是指在浏览器刷新、后退和前进时不起作用的页面部分
- 聊天刷新和向下滚动到最新消息的功能不起作用
- 元标记刷新在镶边中不起作用
- jScrollPane高度刷新基于我的内容(不起作用)
- 平滑滚动在 Rails 中不起作用,除非刷新页面
- 显示 ul 时 iScroll 刷新不起作用
- 图片上传后 PHP 页面刷新不起作用
- 使用AJAX的自动刷新不起作用