ajax方法里面循环调用ajax方法的问题
function a(){
$.ajax({
type:"get",
url:"",
//url:"index.php?m=member&c=index&a=public_getdevice_ajax",
data:"m=member&c=index&a=public_getdevice_ajax&user={$memberinfo[user]}",
success:function(data,textStatus)
{
var j=eval(data);
for(var i=0;i<j.length;i++){
var device=j[i].device;
var session=j[i].session;
var version=j[i].version;
var content=aaaaa;
$.ajax({
type: "post",
url: "http://www.aaa.com/",
data:content,
beforeSend: function(XMLHttpRequest){
//ShowLoading();
//alert("aa");
},
success: function(data, textStatus){
j=eval('('+data+')');
alert(data);
if(j.RESPONSE=="SUCCESS"){
document.getElementById(device).style.display='inline-block';
}else{ ssss;}
},
complete: function(XMLHttpRequest, textStatus){
//HideLoading();
//alert("cccc");
},
error: function(){
}
});
}
},
complete: function(XMLHttpRequest, textStatus){
//HideLoading();
//alert("cccc");
},
error: function(){
}
});
}这样用的话第二个ajax不是跟着for循环执行的,第二个ajax要用到第一个ajax请求来的参数。请教这是该怎么解决?
[解决办法]
你贴出的代码就有问题啊,红色地方的变量都没定义,不知道你要实现什么功能,自己修改下就好了,要引用上一个ajax的内容一定要同步按照你的这个要求,要不就得放回调里面,这个数据同步起来就更加麻烦了
for(var i=0;i<j.length;i++){
var device=j[i].device;
var session=j[i].session;
var version=j[i].version;
var content=aaaaa;
$.ajax({
type: "post",
url: "http://www.aaa.com/",
data:content,
beforeSend: function(XMLHttpRequest){
//ShowLoading();
//alert("aa");
},
success: function(data, textStatus){
j=eval('('+data+')');
alert(data);
if(j.RESPONSE=="SUCCESS"){
document.getElementById(device).style.display='inline-block';
}else{ ssss;}
},
complete: function(XMLHttpRequest, textStatus){
//HideLoading();
//alert("cccc");
},
error: function(){
}
});
}
},
complete: function(XMLHttpRequest, textStatus){
//HideLoading();
//alert("cccc");
},
error: function(){
}
});
------解决方案--------------------
忘了对run进行首次调用了。