在更新之前,页面等待所有AJAX调用完成

Gor*_*oro 6 html javascript ajax jquery user-interface

有时在我的页面上我同时做了很多ajax调用.我们的想法是每个元素都会在其数据可用时更新(我不想对调用进行排队).但是,有时,在完成所有ajax调用之前,网页不会更新任何元素.

例如,我正在更新连续的四张图片 - 每张图片都有自己的ajax回调,一旦数据可用就会更新其源代码; 代码看起来像这样:

for (var i = 0; i < numPictures; i++ ){
  Dajaxice.Images.load_picture(callback_function, {'pictureId': i});
}
Run Code Online (Sandbox Code Playgroud)

callback_function一旦准备就将图像放入其UI元素中:

imgSnippet = '<img src="' + data.img_source + '"/>'
$("#" + data.container_id).html(imgSnippet);
Run Code Online (Sandbox Code Playgroud)

(数据是此功能从服务器接收的对象)

我正在使用(如您在示例中所见)dajax(django的插件)用于AJAX功能.在服务器端,我有一个Apache(2.2)通过mod_wsgi运行django 1.3.

执行时,即使某些ajax调用提前完成(我可以在我的服务器上看到它),该页面也不会更新任何元素,直到最后一次调用返回.

有什么建议?

谢谢,

Sed*_*der 1

我建议创建一个数组来保存所有图像,并创建一个新函数,当您从服务器获取所有图像时,该函数将显示图像,并在回调 foreach 图像中,当计数器等于显示的图像数量时,增加 q 预定义计数器照片并将计数器归零,您可以将加载放在图片应该所在的位置,直到它们的qll wwlith您抱歉,我没有写您的代码,但我在移动设备上,如果我的答案,我可能会稍后为您发布不清楚