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

  • 时间:2019-06-12 09:22 编辑: 来源: 阅读:2309
  • 扫一扫,手机访问
摘要: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)
最新发布的资讯信息
【酷文分享|互联网摘】网站过度优化的降权一般现象(2019-12-24 09:51)
【CMS学院|DEDECMS】织梦dedecms二次开发之审核时间同步更新(2019-12-20 09:17)
【CMS学院|DEDECMS】Dedecms列表页分页错位问题解决方案(2019-12-20 09:15)
【CMS学院|DEDECMS】DedeCMS系统datalist标签调用arcurl方法(2019-12-20 09:13)
【CMS学院|DEDECMS】织梦dedecms缓存引起的一些问题的解决方法(2019-12-19 09:16)
【CMS学院|DEDECMS】dedecms后台文本编辑器不显示或加截慢解决办法(2019-12-19 09:12)
【CMS学院|DEDECMS】将织梦dedecms后台编辑器更改为Ueditor(2019-12-19 09:05)
【建站教程|故障问题】宝塔面板7.X不能安装nginx的解决方法(2019-12-19 08:34)
【酷文分享|互联网摘】提升网站关键词排名有哪些技巧(2019-12-19 08:31)
【CMS学院|DEDECMS】织梦自定义表单提交成功后跳转页面(2019-12-18 08:54)
底部广告
网站首页 | 关于我们 | 广告合作 | 联系我们 | 隐私条款 | 免责声明
CopyRight 2004-2017 淘源码网 | 苏ICP备12026353号-3

公安备案苏公网安备 32011202000290号

联系客服
手机版

扫一扫进手机版
返回顶部