ajax怎么把数据保存在一个数组中然后获取

varCache={arrays:newArray(),data:function(){varxmlhttp=createAjax();xmlhttp.open("GET... var Cache={
arrays: new Array(),
data: function(){
var xmlhttp=createAjax();
xmlhttp.open("GET","s.jsp",true);
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
if(xmlhttp.status==200){
var xmlData=xmlhttp.responseXML;
var title=xmlData.getElementsByTagName("title");
if(title==null) return;
for(var i=0;i<title.length;i++){
Cache.arrays.push(title[i].firstChild.nodeValue);
}
//alert(Cache.arrays);
}
else{
alert(xmlhttp.status);
}
}
};
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.send(null);
},
getData: function(){
alert(Cache.arrays);
}
};
首先建立一个类,然后保存在属性arrays里面,再用getData返回数组的数据,现在问题是getData时数组的数据还是为空,可能是回调函数还没有执行,怎么确保回调函数执行了getDate方法可以返回一个有数据的数组呢,比如我可以在外部用var a=Cache.getData()获取到ajax返回的数据,求教?谢谢
展开
 我来答
百度网友8994507
2011-03-16 · TA获得超过138个赞
知道小有建树答主
回答量:85
采纳率:100%
帮助的人:68.6万
展开全部
将所有与它相关的操作写在一个回调函数里,然后把这个函数放在onreadystatechange里面
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式