AJAX调用在FOR语句自动跳过要怎么解决?

crazywh 2009-03-04 02:35:29
求助高手帮忙,我用FOR循环执行AJAX返回值,结果AJAX还没返回值就循环了,显示“正在载入中”,有几个会返回,但是显示的是最后一次调用AJAX返回的值?有没有办法解决啊,等逐个AJAX返回值再执行下一个循环...

for(var i=0;i<eles.length;i++){
var childEles=eles[i].childNodes;
var curid=eles[i].rows[0].cells[0].childNodes[0].value;
var priceretain=eles[i].rows[0].cells[2].innerHTML;
getPrice(eles[i].rows[0].cells[3],discountName,discount,curid,priceretain);
};

//通过AJAX获取值
function getPrice(obj,discountName,discount,curid,priceretain){
http_request=false;
http_request=new Ajax();//指定回调节函数
http_request.onreadystatechange=function getProvince(){
obj.innerHTML="正在载入中";
if(http_request.readyState==4){
if(http_request.status==200){
obj.innerHTML=http_request.responseText;
}
}
};
//alert("Handler.ashx?action=getRulePrice&discountName="+escape(discountName)+"&discount="+discount+"&curid="+curid+"&priceretain="+priceretain);
http_request.open("get","Handler.ashx?action=getRulePrice&discountName="+escape(discountName)+"&discount="+discount+"&curid="+curid+"&priceretain="+priceretain);
http_request.send(null);
}
...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
MadWork 2009-04-08
  • 打赏
  • 举报
回复
obj.innerHTML=http_request.responseText;
你这个是赋值改成
obj.innerHTML+=http_request.responseText+"|";
DWilliam 2009-04-07
  • 打赏
  • 举报
回复
(⊙o⊙)…
sohighthesky 2009-04-02
  • 打赏
  • 举报
回复
顶一个!
crazywh 2009-03-04
  • 打赏
  • 举报
回复
自己解决了,结贴

52,782

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧