如果10个循环中的1个失败,则通过jquery循环调用ajax失败

时间:2011-10-25 18:50:45

标签: jquery

我有一个循环通过json数组,然后触发ajax请求。如果ajx请求中的1个失败,则调用错误函数并且成功不是。即使是成功的电话。如果数组中的所有url都工作,则为每个成功调用调用success函数。

为什么错误只被调用一次并且每次成功都成功?

 $.getJSON('/test/webcontent/js/env-urls.js', 
            function(data) {

                $.each(data.env.urls, function(index, url) {
                        //alert(url.path);
                        $.ajax({
                            url: url.path, 
                            dataType: 'jsonp',
                            jsonpCallback: 'jsonCallback',
                            cache: false,
                            success: function(data){
                                alert(data.env.v);

                                var targetreleasediv = "." + url.target + ' td:nth-child(2)';
                                var targetdescdiv = "." + url.target + ' td:nth-child(3)';

                                //alert(targetreleasediv);
                                //alert(targetdescdiv);

                                $(targetreleasediv).html(data.env.v);
                                $(targetdescdiv).html(data.env.desc);
                            },
                            error: function(jqXHR, textStatus, errorThrown){
                                alert('error');
                                var targetreleasediv = "." + url.target + ' td:nth-child(2)';
                                var targetdescdiv = "." + url.target + ' td:nth-child(3)';

                                //$(targetreleasediv).html("server is currently down");
                                //$(targetdescdiv).html("server is currently down");
                            }
                        });
                });
            });

这是我的json数组,我正在使用网址循环。

{
   "env":{
      "urls":[
         {
            "path":"http://server:port/server/instance2.js",
            "target":"ins2-1"
         },
         {
            "path":"http://server:port/server/instance3.js",
            "target":"ins3-1"
         }
      ]
   }
}

0 个答案:

没有答案