for循环里sendrequest,假如循环了1-5,但是sendrequest之后获取到的也是五次,但是都是1-5中的5,也就是最后一个值。为什么呢?for (var ids=0; ids<6; ids++){alert(ids);sendRequest("GET", "/rest/oam/project/"+m+"/status", paramsp, function(response) {。。
alert(ids);
。
}
}也就是说alert(ids)出来的东西不一样,虽然都在for循环里,但是sendrequest里的都是alert出来的5javascriptsendrequest函数
alert(ids);
。
}
}也就是说alert(ids)出来的东西不一样,虽然都在for循环里,但是sendrequest里的都是alert出来的5javascriptsendrequest函数
在回调的时候已经循环完了
版主,你好
像我这种格式应该在哪里加idx呢,并且这里是用callback还是我的function(response)呢,还麻烦楼主指教了。我的m是for循环过来的,但是就是这个m总是拿到最后的值(我的sendrequest所有都包在一个()里)
sendRequest("GET", "/rest/oam/project/"+m+"/status", paramsp, function(response) {
if (response.status != null) {
statusList[i] = {
caseId: m,
caseName: projNa
};
alert(m);
i++;
}
});
版主,你好
像我这种格式应该在哪里加idx呢,并且这里是用callback还是我的function(response)呢,还麻烦楼主指教了。我的m是for循环过来的,但是就是这个m总是拿到最后的值(我的sendrequest所有都包在一个()里)
sendRequest("GET", "/rest/oam/project/"+m+"/status", paramsp, function(response) {
if (response.status != null) {
statusList[i] = {
caseId: m,
caseName: projNa
};
alert(m);
i++;
}
});不好意思版主我写错了,这块我知道怎么加,是function sendRequest(method,url,paramsp,callback,ids){
//....其他处理
//调用回调函数
callback(ajaxResponse,ids);
}
这一块我直接复制这个代码吗?还是哪里对应起来呵呵
function sendRequest(method,url,paramsp,callback,ids){
//....其他处理
//调用回调函数
callback(ajaxResponse,ids);
} for (var ids = 0; ids < 6; ids++) { alert(ids); sendRequest("GET", "/rest/oam/project/" + m + "/status", paramsp, function (response, ids) {//。。
//
alert(ids);
//。
}, ids);
}
sendRequest("GET", "/rest/oam/project/"+m+"/status", paramsp, function(response,m) {
if (response.status != null) {
statusList[i] = {
caseId: m,
caseName: projNa
};
alert(m);
i++;
}
}, m);
版主你的意思是改
function sendRequest(method,url,paramsp,callback,ids){
//....其他处理
//调用回调函数
callback(ajaxResponse,ids);
}
这个东西吧。
可是我们项目里很多地方都用到sendRequest,并且大都不需要ids,那怎么办?只能重新声明一个function?
如果你怕混乱,最好还是在当前页面重新定义sendRequest方法覆盖原来的