首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

XMLHTTP,该怎么解决

2012-03-31 
XMLHTTP varbnewActiveXObject( Microsoft.XMLHTTP )b.onreadystatechangefunction(){if(b.readyStat

XMLHTTP

var   b   =   new   ActiveXObject( "Microsoft.XMLHTTP ");
b.onreadystatechange     =   function(){
if(b.readyState   ==   4   &&   b.status   ==   200){

var   strResult   =   b.responseText;
}  

b.open( "POST ",url,true);
b.send(null);      

}
同步可以得到数据,改成true后,就得不到数据了,   没有执行到if语句里面
js提示:完成该操作所需的数据还不可使用

[解决办法]
var b = new ActiveXObject( "Microsoft.XMLHTTP ");
b.onreadystatechange = function(){
if(b.readyState == 4 && b.status == 200){

var strResult = b.responseText;
}
}

b.open( "POST ",url,true);
b.send(null);


[解决办法]
要注意异步的特性,使用回调函数,而不是顺序执行

function callBack ($Context) {
alert($Context);
}

var b = new ActiveXObject( "Microsoft.XMLHTTP ");
b.onreadystatechange = function(){
if(b.readyState == 4 && b.status == 200){

callBack(b.responseText);
}
}

b.open( "POST ",url,true);
b.send(null);

热点排行