为什么数组作为参数传递进去取不了值出来?

y_cc 2009-05-18 08:29:03
加精
为什么数组作为参数传递进去取不了值出来? (arrData)
好像原来都OK的, 换个OS就不行了?
还有这种诡异的事?
各位兄弟帮忙看一下, 谢了.
或者说该怎样取值?

function Test(){

var arrData = [];
GetInfo(arrData);
}

function GetInfo(arrData) {
if(bXmlHttpSupport) {
var sUrl = 'info.php';
var oRequest = new XMLHttpRequest();
oRequest.onreadystatechange = function() {
if(oRequest.readyState == 4) {
var obj = eval('(' + oRequest.responseText + ')');
arrData = obj.Data1;
}
}
oRequest.open('POST', sUrl);
oRequest.send(null);
}

}
...全文
1614 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
CTO1206 2009-06-13
  • 打赏
  • 举报
回复
不错,学习一下
y_cc 2009-06-11
  • 打赏
  • 举报
回复
感谢万分!
zhq_442577358 2009-05-31
  • 打赏
  • 举报
回复
oRequest.send(null); 中的null表示什么意思啊,不写又是什么意识了,
zouzedong 2009-05-20
  • 打赏
  • 举报
回复
不错。帮顶了
cyy20121120 2009-05-19
  • 打赏
  • 举报
回复
数组退化~~~~~~~~~~~~~
可以考虑用指针去取值
vitalitysky 2009-05-19
  • 打赏
  • 举报
回复
正在处理数组呢,非常有学习价值
kljiao87 2009-05-19
  • 打赏
  • 举报
回复
我想说的,楼上都回答了,比我想的还全面,看来要多加努力了。
lzj34 2009-05-19
  • 打赏
  • 举报
回复
顶一下哦,看了半天没有看明白,水平有限,嘿嘿……
linnyao 2009-05-19
  • 打赏
  • 举报
回复
arrData = obj.Data1;
你在ajax返回值里这么赋值好像把数组转换成obj.Data1的类型了;
很有可能就不是数组了
Naga 2009-05-19
  • 打赏
  • 举报
回复
顶一下哦,看了半天没有看明白,水平有限,嘿嘿……
李董 2009-05-19
  • 打赏
  • 举报
回复
xuexi
鄙人姓胡 2009-05-19
  • 打赏
  • 举报
回复
正在学习中,理解不透测。。。
liuyjpdc 2009-05-19
  • 打赏
  • 举报
回复
学习,学习。。。
zhaoweiting0609 2009-05-19
  • 打赏
  • 举报
回复
没搞过,up一下
relucent 2009-05-19
  • 打赏
  • 举报
回复
window.arrData = [] 也是全局变量。
yudylaw 2009-05-19
  • 打赏
  • 举报
回复
呵呵,变量的作用域问题。
kevin_wanghz 2009-05-19
  • 打赏
  • 举报
回复
不错,不错!!!
moqingcn 2009-05-19
  • 打赏
  • 举报
回复
UP
qintao1203 2009-05-19
  • 打赏
  • 举报
回复
不错学习了!!!
Go 旅城通票 2009-05-19
  • 打赏
  • 举报
回复
全局变量

js变量没有引用的,就是传址


var arrData//全局变量
function Test(){
GetInfo();
}

function GetInfo() {
if(bXmlHttpSupport) {
var sUrl = 'info.php';
var oRequest = new XMLHttpRequest();
oRequest.onreadystatechange = function() {
if(oRequest.readyState == 4) {
var obj = eval('(' + oRequest.responseText + ')');
arrData = obj.Data1;
}
}
oRequest.open('POST', sUrl,false); //注意要同步提交,要不在ajax状态为4前都不能使用arrData,如果为同步提交可以不需要处理函数了,直接后面
oRequest.send(null);
//arrData=eval('(' + oRequest.responseText + ')'); //同步可以不需要处理状态
}

}

加载更多回复(19)

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧