我们都有这样的需求:

  我需要几个ajax请求,数据全部成功获取后才能加载。

  以前做法:

     1,在success回调里进行嵌套,这样,会造成代码难以阅读。

     2,改异步为同步,顺序执行,不符合ajax初衷,效率不高。

     3,写一个callback函数,统计所有请求都完成后执行。貌似有点繁琐。

  jquery现在提供里这样一个功能。

  $.when($.ajax(url1)

    ,$.ajax(url2))

    .then(function success(arg1,agr2){

      //arg1[0],arg2[0] 就是两个请求返回的数据

    },function error(err){

     });

posted on 2014-07-18 01:28  胡布内尔  阅读(191)  评论(0编辑  收藏  举报