如何在JavaScript中刷新它而不影响HTML?
我有一个代码,工作超级好,但我不知道如何把JavaScript放入其中检查我的表“聊天”中是否有一个额外的结果,如果有它应该刷新页面,如果结果没有没改变,然后不刷新页面,抱歉,但我不知道什么时候谈到JavaScript。
chat.php
require('checkformessages.php'); ...
checkformessages.php
$sqlmessages = mysql_query("SELECT * FROM chat"); $numbermessages = mysql_num_rows($sqlmessages); // JavaScript script (no idea what it's supposed to be // but some kind of timer checking if there is new result in the database) if($numbermessages===$Javascriptcheck) { //do nothing } else { //it should refresh the chat.php because its required in the page echo "window.location = window.location.href;"; }
这太宽泛了,可以做更多的研究。 但是,我不介意添加一些注释以使您走上正确的轨道:
- AJAX请求源自浏览器。 如果您定期检查某些内容,可能需要一个向服务器发出请求的JavaScript计时器。
- 由于这是一个读操作,因此
get
操作很好。 您的脚本可能会从查询字符串中读取项目,然后使用合适的消息格式进行响应。 JSON很受欢迎。 - 您返回的数据可能最适合作为一组新消息。 你确实可以返回一个布尔值,如果存在新行则刷新整个页面,但这相当浪费。 您也可以在AJAX回复中返回新行。
- 要获得新行,您需要在此表中添加时间戳,并使用AJAX操作将最后已知的时间戳发送到服务器。 新行是时间戳大于或等于提供的值的行。
- jQuery
get()
方法可能是合适的。
我建议使用上面的内容来帮助你入门 – 你可能需要用搜索引擎来研究每一个,我会鼓励你。 如果您仍然遇到困难,在线完成一些示例/教程可能也会有所帮助。
祝好运!