日期:2014-05-18  浏览次数:20690 次

使用ajax的问题,有时候没有反应,请教
function   getHttp(){    
var   req;
if   (window.ActiveXObject)   {
                req   =   new   ActiveXObject( "Microsoft.XMLHTTP ");
        }
        else   if   (window.XMLHttpRequest)   {
                req   =   new   XMLHttpRequest();
        }
return   req;
}

function   CallServerReturnString(url,callbackfun,data){
var   req=getHttp();
alert(req);
req.open( "GET ",url,false);
req.onreadystatechange=function(){
        if   (req.readyState==4)   {
                if   (req.status==200)   {
                callbackfun(req.responseText);
                }
        }
}
req.send(data);
}

在我调用CallServerReturnString(url,callback)的时候有的时候没有执行if(req.status==200)这个判断,没有执行url路径的网页,是怎么回事?

而很多时候调用这个CallServerReturnString()函数的时候都执行了url

不知道怎么回事?有人能告诉我吗?这是怎么回事?谢谢!

------解决方案--------------------
返回的状态还有其它的值啊?

if (req.readyState==4) {
if (req.status==200) {
callbackfun(req.responseText);
} else {



}

------解决方案--------------------
req.onreadystatechange=function(){
if (req.readyState==4) {
alert(req.readyState) //add this
if (req.status==200) {
alert(req.status) //add this
callbackfun(req.responseText);
}
}
}

根据返回的值看看什么原因