+ -
当前位置:首页 → 问答吧 → AJAX异步的问题

AJAX异步的问题

时间:2011-03-09

来源:互联网


JScript code

function GetXmlHttpObject() {
    var xmlHttp = null;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    }
    catch (e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    if (xmlHttp == null) {
        alert("您的浏览器不支持AJAX!");
        return;
    } else {
        return xmlHttp;
    }
}



上面是获取XMLHttpRequest对象的方式,如果同一个页面在加载的时候同时执行多个JS函数。

每个函数里面都“xmlHttp = GetXmlHttpObject();”获取对象,会不会造成xmlHttp 的混乱。

就是说各个函数实际上使用的都是同一个“xmlHttp ”,如果是的话,应该怎么解决。

上面那段获取XMLHttpRequest对象的代码如果改一下不声明“var xmlHttp”,而是直接返回如(new ActiveXObject("Msxml2.XMLHTTP")),每个函数里面xmlHttp实例名都不一样,能解决吗?

还是本身不会造成xmlHttp混乱。

AJAX不太懂,望指教。




作者: nksekrkke   发布时间: 2011-03-09

首先,你最好了解下 变量作用域 的问题

如果你把这个都理解好了,也不会出现这个疑问了,否则我们说太多也没什么作用

作者: luxu001207   发布时间: 2011-03-09

再多 不是 太多,又打错字...

作者: luxu001207   发布时间: 2011-03-09