2011-12-16 50 views
4

我有20个页面,每个页面包含30个li标签,如下面,如何实现多线程的jQuery

<li id="1">1<li/> 
<li id="2">2<li/> 
<li id="3">3<li/> 
<li id="4">4<li/> 
<li id="5">5<li/> 
... 

我会触发一个ajax(.getJSON())调用,比如多线程每个li标签, 我这样做一个使用下面的jQuery代码,但它是逐一ajax(.getJSON)调用, 它需要2秒(业务逻辑+表示逻辑)才能完成一个ajax调用。要加载总页面,需要60秒(2x30)。

jQuery(li).each(function(e) { 
    jQuery.getJSON(JSonUrl,{}, 
     function(json) { 
      // AJAX Response. 
      if (json == null) { 
      } else { 
       var jsonList = json.deviceStatusString.split(','); 
       var jsonInnerList = jsonList[0].split('#'); 
       ... 
      } 
     } 
    ); 
}); 

你能帮我解决像java多线程的所有ajax调用吗?

+0

使用php或任何其他服务器端语言 – noob 2011-12-16 07:00:13

回答

1

如果你碰到了多个AJAX请求的性能颠簸,你应该总是试图做的事情之一是将所有这些AJAX调用最小化为更少的调用,最好如果你可以抛出所有这一切只需要一个AJAX调用。

这样,你就摆脱了与抛出和维护多个HTTP请求有关的整个开销堆。