ajax轮询读取数据 AJAX异步间隔几秒循环查询 AJAX循环读取数据 终止轮询方法

  • 时间:2019-06-12 09:22 编辑: 来源: 阅读:809
  • 扫一扫,手机访问
摘要:AJAX可以实现后台循环读取数据,代码如下

AJAX可以实现后台循环读取数据,代码如下

<script>
    setInterval("test()",4000);
    function test() {
        $.ajax({
            url:'payajax.php?out_trade_no=<?php echo $arr['Merchants']; ?>',
            async:true,
            type: 'get',
            success: function (data) {
               if(data=='OK'){
         alert('充值成功!');
          window.location.href = './';
        }
            }
        })
    }
</script>

这个是一个支付接口的异步读取付款状态的功能。

但是这样会发现这个轮询会一直循环一直跳出充值成功的提示,所以我们需要有个内部终止轮询的方法,稍微修改成如下:

<script>
var timesRun = 0;
var interval = setInterval(function(){
if(timesRun === 1){
clearInterval(interval);
}
test();
}, 2000);
    function test() {
        $.ajax({
            url:'payajax.php?out_trade_no=<?php echo $arr['Merchants']; ?>',
            async:true,
            type: 'get',
            success: function (data) {
               if(data=='OK'){
                timesRun=1;
                alert('充值成功!');
                window.location.href = './';
                return;
        }
            }
        })
    }
</script>

当然还可以修改下,设置超时时间,或者轮询多少次后终止轮询

限制次数的

var timesRun = 0;
var interval = setInterval(function(){
timesRun += 1;//每刷新一次 timesRun 就+1
if(timesRun === 60){//如果它等于 60 次了,就删除setInterval 循环
clearInterval(interval);
}
//这里写你的轮询调用代码
}, 2000);

或者限制时间的:

var startTime = new Date().getTime();//现在的时间
var interval = setInterval(function(){
if(new Date().getTime() - startTime > 60000){//现在的时间减去刷新开始的时间大于 60 秒
clearInterval(interval);//就删除 setInterval 轮询
return;
}
//这里写你的轮询调用代码
}, 2000);


  • 全部评论(0)
最新发布的资讯信息
【酷文分享|互联网摘】开源CMS建站系统如何选择使用WordPress/DedeCMS/帝国CMS/Discuz(2019-10-15 08:53)
【建站教程|建站技巧】js代码实现调起微信客户端(2019-10-14 09:10)
【CMS学院|DEDECMS】dedecms后台编辑文章时archives_do.php显示空白解决办法(2019-10-11 08:00)
【CMS学院|DEDECMS】dedecms远程JPEG/bmp格式图片不能本地化的解决方法(2019-10-11 07:57)
【建站教程|建站技巧】如何取消服务器/主机空间目录脚本的执行权限(2019-10-10 08:37)
【CMS学院|DEDECMS】dedecms的dedesql.class.php on line 489错误的解决方法(2019-10-10 08:33)
【CMS学院|DEDECMS】dede织梦“无法把未知文档推荐给好友”解决办法(2019-10-10 08:32)
【CMS学院|DEDECMS】织梦dede网站搬家后出现/include/templets/default/index.htm Not Found!(2019-10-09 08:49)
【CMS学院|DEDECMS】dedecms提示:内存错误,下载解压版base_dic_full.dic(2019-10-09 08:48)
【CMS学院|DEDECMS】dedecms模板中dedeajax2.js加载缓慢导致网页无法打开(2019-10-09 08:45)
底部广告
网站首页 | 关于我们 | 广告合作 | 联系我们 | 隐私条款 | 免责声明
CopyRight 2004-2017 淘源码网 | 苏ICP备12026353号-3

公安备案苏公网安备 32011202000290号

联系客服
手机版

扫一扫进手机版
返回顶部