首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ajax jquery让页面每分钟刷新一次数据?

如何使用ajax jquery让页面每分钟刷新一次数据?
EN

Stack Overflow用户
提问于 2013-04-08 04:21:04
回答 2查看 4.3K关注 0票数 1

我们如何实现一个计时器来每隔一分钟发送一个ajax请求来刷新数据(比如来自数据库中其他用户的新条目)。我使用的是jquery中的$.ajax。

我的目的是发送上次更新的时间,这样服务器就不会发送重复的数据。仅从该时间之后创建的行。

我的服务器脚本是php。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-08 04:25:35

对于发送日期和时间,您可以使用此函数

代码语言:javascript
复制
        var date    = new Date();
        var date    = date.getUTCFullYear() + '-' +
        ('00' + (date.getUTCMonth()+1)).slice(-2) + '-' +
        ('00' + (date.getUTCDate()).slice(-2) + ' ' + 
        ('00' + date.getUTCHours()).slice(-2) + ':' + 
        ('00' + date.getUTCMinutes()).slice(-2) + ':' + 
        ('00' + date.getUTCSeconds()).slice(-2);

上面会将日期和时间格式化为mysql格式,您可以通过变量将其传递给mysql查询,然后在每分钟之后使用setInterval传递当前时间。

代码语言:javascript
复制
    setInterval(function(){ 
     $.ajax({
     type:"POST",
     data:"Time="+ date,     
     url:"serverRef",
     success: function(data){
         // On success 
                           }
     });              

     },60000);

注意:您也可以在服务器端使用相同的技术

票数 2
EN

Stack Overflow用户

发布于 2013-04-08 04:31:13

带有jQuery的postsetInterval将会创造奇迹。确保如果你有很多访问者,记得缓存,否则你可能会在没有注意到的情况下收集很多查询,在过去我注意到这可能会让一些主机不堪重负,实际上会让你离线。

代码语言:javascript
复制
var ajax = window.setInterval(function(){
    $.post('path/to/my/script.php', function(data){
         if(data == "stop")
         {
             clearInterval(ajax);
             return;
         }

         $('#statistics').html(data);
    });
}, 60000);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15867362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档