快来看看 ajax实时刷新处理


当前第2页 返回上一页

方式二:每一次轮询都判断上一次请求是否完成,完成了才会执行下一次的请求(推荐)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

var isLoaded = false;

function req(opts) {

    $.ajax({

        type: 'get',

        url: 'demo.php',

        dataType: 'json',

        beforeSend: function() {

            if(opts.init === 1) {

                $('.zh-loading').show();

            }

            isLoaded = false;

        },

        success: function(res) {

            console.log(res);

        },

        complete: function() {

            if(opts.init === 1) {

                $('.zh-loading').hide();

            }

            isLoaded = true;

        },

        error: function() {

            console.log('请求失败~');

        }

    });

}

req({"init": 1});

setInterval(function() {

    isLoaded && req({"init": 0});

}, 3000);

上面的 isLoaded && req({"init": 0}); 表示前面一个条件正确,则执行&&后面的方法

正常的写法是

1

if(isLoaded) req({"init": 0});

另外注意一点:isLoaded=true 要在complete里加,如果只在success里加的话, 请求失败了就不会轮询再请求了。complete不管success或error都会执行

代码就到这里了,thank you for attention~

相关免费学习推荐:javascript(视频)

以上就是快来看看 ajax实时刷新处理的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

一起了解script标签中的async和defer属性

javascript什么叫事件源

javascript怎么获取元素并删除

浅谈js数组array的用法

ajax获取网页添加到div中的方法

javascript怎样修改div内容

使用proxy实现双向绑定的方法介绍(代码)

nw.js的localstorage的物理储存实例详解

在vuejs里利用index对第一项添加class的方法

一招搞定javascript猜数字小游戏

更多相关阅读请进入《ajax》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...