今天拿到一个小任务,在页面中使用js获取一个服务地址上的数据,然后显示出来,当然了,要使用异步处理,按说这也不是什么难事儿,但偏偏就搞了我整整一个上午的时间,归结一句话:经验不够!
//获取XMLHttpRequest的函数:
function getXmlHttp() //获取XMLHttpRequest对象
{
if(window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
else
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
//获取服务信息的函数:
function getInfo(type,startDate,endDate,pagingIndex) //根据给进的参数请求服务数据
{
var url="http://baidu.com"; //拼接地址
xmlHttp=getXmlHttp(); //得到XMLHttpRequest对象
xmlHttp.open("get", url, true); //打开连接
xmlHttp.onreadystatechange=function () //定义当信息反馈回来时的处理函数
{
if(xmlHttp.readyState==4)
{
alert(xmlHttp.responseText); //将得到的信息弹出来
}
};
xmlHttp.send(); //发送请求
}
看起来没有什么地方有问题的,可就是没反应,每次得到的responseText都是空,很火大,上网找资料,发现网上大部分的例子都是IE下的,而我的浏览器是chrome,
索性就拿到IE下去测试一下,噔!!!通过了,得到了服务数据!哇,为什么在chrome就不行呢?之前用我本机作为服务器,
同样地脚本在chrome下就可以正常得获取到本机上服务信息,现在换了其他地址就短路了,不明白为什么,还请有经验的朋友指点一下!