Buenas,
El problema es que una petición te machaca la otra y asi sucesibamente hasta la última que como no tiene ninguna por detras funciona correctamente.
En este post sucedía algo parecido y por el final logramos encontrar una función que establecía como una espece de cola de espera declarando para ello el objeto ajax en una vble global y asi rastrear su estado
Míratelo y adáptalo a tu código. Pienso que es lo que estas buscando
Llamadas Ajax Simultaneas
Vendría a ser algo asi,...
Código javascript
:
Ver originalvar ajax=null; //vble global
//Funcion que crea el objeto ajax (Supongo que la tendrás tu)
//....
//
//Funcion que realiza la petición AJAX
function peticionAjax (url,divcontenido){
if (ajax==null) {
objDestino=document.getElementById(divcontenido)
ajax=objetoAjax();
ajax.open("GET", url, true);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
objDestino.innerHTML = ajax.responseText
ajax = null
}
}
ajax.send(null)
}else{
setTimeout("peticionAjax ('"+url+"','"+divcontenido+"')",10)
}
}
function impuesto(art,imp) {
for (i = 1; total = 2; i <= total; i ++) {
var aleatorio=Math.random();
destino = 'imp_'+i;
peticionAjax ("gestion/_ajax/mysql.php?opcion=impaso&aleatorio="+aleatorio+"&ar ticulo="+art+"&indice="+i, destino);
}
}
Saludos