日期:2014-05-16  浏览次数:20752 次

js和Ajax返回值比较时发生的怪异问题 - Web 开发 / Ajax
获取Ajax返回值:
JScript code

.....
var a = -1;
var b = -1;

if (xmlHttp.readyState == 4) {
    if (xmlHttp.status == 200) {
        a = xmlHttp.responseText;
    }
}

alert(a); // 打印a
alert(b); // 打印b
if(a!= b) {
    doSomething();
        a = b;
}


问题就出在alert的地方,如果有alert语句,那么当a != b时,会执行doSomething;但是如果去掉alert句,doSomething则一定不会被执行。我总不能让它alert一个东西出来,让用户去点,再去执行doSomething吧。
请大家帮忙分析下问题出哪了。


------解决方案--------------------


if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
a = xmlHttp.responseText;
if(a!= b) {
doSomething();
a = b;
}
}
}