今天写一个导入表格数据,需要用到ajax请求多个,但是一下子又不能全部请求到后端

所以做了个ajax队列请求

$(function(){
    var AJAXManager = (function() {
         var requests = [];
     
         return {
            addReq:  function(opt) {
                requests.push(opt);
            },removeReq:  function(opt) {
                if( $.inArray(opt,requests) > -1 )
                    requests.splice($.inArray(opt,requests),1);
            },run: function() {
                var self = this,oriSuc;
     
                if( requests.length ) {
                    oriSuc = requests[0].complete;
     
                    requests[0].complete = function() {
                         if( typeof(oriSuc) === 'function' ) oriSuc();
                         requests.shift();
                         self.run.apply(self,[]);
                    };   
     
                    jQuery.ajax(requests[0]);
                } else {
                  self.tID = setTimeout(function() {
                     self.run.apply(self,[]);
                  },1000);
                }
            },stop:  function() {
                requests = [];
                clearTimeout(this.tID);
            }
         };
    }());



    AJAXManager.run(); 
     
    $("#qingqiu").click(function(){
       AJAXManager.addReq({
           type: 'get',url: 'http://127.0.0.1/ajax.php',data: '123',success: function(data){
              console.log(data);
           }
       });
    });

});
最后修改:2022 年 07 月 01 日 09 : 24 AM
如果觉得我的文章对你有用,请随意赞赏