Когда вы используете цикл для отправки ajax-запроса и используете один объект, существует вероятность, что второй или концептуальный запрос может быть отправлен даже до того, как будет отправлен ответ на первый запрос.
Поэтому используйте отдельные объекты для отправки индивидуальных запросов.
Пример кода должен быть таким ..
for(i=0; i<10; i++){
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
eval("xmlhttp"+i+"=new XMLHttpRequest()");
}
else
{// code for IE6, IE5
}
eval("xmlhttp"+i+".onreadystatechange=function(i)");
function(var obj)
{
//function contents
}
alert("in ajax)
// assign responsetext and send code
}