Javascript AdobeAIR和多个XMLHttpRequests正在。。。奇怪的

Javascript AdobeAIR和多个XMLHttpRequests正在。。。奇怪的,javascript,ajax,air,xmlhttprequest,Javascript,Ajax,Air,Xmlhttprequest,我正在使用HTML+Javascript制作一个小的AdobeAIR应用程序(我的第一个)。我需要运行多个异步数据请求,但第二个请求似乎没有触发(请注意,请求最初不是并发运行的)。我尝试将程序剥离到显示问题的最低限度,起初只触发了第一个请求,但后来事情变得奇怪了。代码和输出如下: <html> <head> <script type="text/javascript" src="AIRAliases.js"></script>

我正在使用HTML+Javascript制作一个小的AdobeAIR应用程序(我的第一个)。我需要运行多个异步数据请求,但第二个请求似乎没有触发(请注意,请求最初不是并发运行的)。我尝试将程序剥离到显示问题的最低限度,起初只触发了第一个请求,但后来事情变得奇怪了。代码和输出如下:

<html> 
<head>
    <script type="text/javascript" src="AIRAliases.js"></script> 
    <script type="text/javascript">         
        function download(page) {
            var url = "http://en.wikipedia.org/w/api.php?action=parse&format=xml&page=" + page;
            xmlhttp = new XMLHttpRequest();
            xmlhttp.open("GET", url,true);
            xmlhttp.onreadystatechange=function(){
                if (xmlhttp.readyState == 4) {
                    air.trace("Done");
                }
            }
            xmlhttp.send(null);
        }

        function appLoad() { 
            download("Main Page");
            download("Main Page");
        }  
    </script> 
</head> 
<body onLoad="appLoad()"> 
</body> 
</html>
实际产量:

C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
Done
Done
Done
Done
Done
Done

以前有人见过类似的东西吗?

简单的回答是,你不应该重复使用xmlhttprequest对象(即使你没有意识到你是这样做的,因为你完全不懂Javascript)

这一行:

            xmlhttp = new XMLHttpRequest();
应该是:

            var xmlhttp = new XMLHttpRequest();

很抱歉找到一个旧线程,但我正在尝试执行异步xmlhttprequest,但在readystatechange函数中没有得到responseText或responseXML。仅在状态设置为0且readystate为4时调用一次。在您的代码中,它说“完成”,但您在哪里以及如何存储页面的内容?下面是示例代码:请注意,在Windows AIR上使用IE,因此当我的IE设置为脱机工作时,请求会发生奇怪的事情。有些是正常的,因为他们在缓存中,有些会失败。
            var xmlhttp = new XMLHttpRequest();