做一个功能,循环遍历IP地址发送ajax请求,知道遍历到响应的IP并记录下来,有一个问题,就是遍历到正确的服务器IP后,alert出来的i都是200,如何才能得到那个正确的i值?求助~!
var startip2="192.168.0.80";
var ipArray = startip2.split(".");
connectWaitingView.show("");//正在连接
for(var i=170;i<200;i++){
var serverIp = ipArray[0]+"."+ipArray[1]+"."+ipArray[2]+"."+i+":8888";
ajaxGetServer = $.ajax({
type : "get",
url:"http://"+serverIp+"/CLC/CLCServicer?methodName=connecttoserver",
async:false,
dataType : "jsonp",//数据类型为jsonp
timeout:5*1000,//超时时间
jsonp: "jsonpCallback",//服务端用于接收callback调用的function名的参数
success:function(data) {
alert(i);
if(data.result=="true" && (data.description!="" || data.description!=null)){
alert(data.description+"+"+i+",the ip addr is "+serverIp);
}else if(data.result=="false"){
promptWaitingMessage.show(data.description);
}else{
serverConnectErrorDialogView.trigger('open');
controlObject = control;//赋值需要关闭的页面对象
}
},
complete: function(XMLHttpRequest, textStatus){
if(textStatus=="timeout"){
alert("time out!+"+i);
}
}
});
}
#include <iostream>
#include <cstring>
#include <vector>
using namespace std;
int main()
{
vector<string>ivec;
string str_in;
&n......
答案就在这里:for循环中 i++ 和++i 区别?
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
问题已经自己解决了,解决方法是将ajax请求的代码独立封装到一个方法里,然后for循环中调用此方法