从单个javascript函数向两个不同的PHP脚本发送两个Ajax请求

从单个javascript函数向两个不同的PHP脚本发送两个Ajax请求,php,javascript,ajax,Php,Javascript,Ajax,是否可以同时向两个或多个Php脚本发送Ajax请求?我知道这可以连续实现(从1得到响应,然后从另一个得到响应),但我想知道这是否可能同时实现。请帮我输入以下代码: function calShowUpload(){ if (http.readyState == 4) { res = http.responseText; document.getElementById('maincontent').innerHTML=res; } } functi

是否可以同时向两个或多个Php脚本发送Ajax请求?我知道这可以连续实现(从1得到响应,然后从另一个得到响应),但我想知道这是否可能同时实现。请帮我输入以下代码:

function calShowUpload(){
    if (http.readyState == 4) {
        res = http.responseText;
        document.getElementById('maincontent').innerHTML=res;
    }
}

function showUpload(obj)
{
      http.open("GET", "./showUpload.php", true);
    http.onreadystatechange = calShowUpload;
    http.send(null);
}


function getXHTTP() {
    var xhttp;
    try {   // The following "try" blocks get the XMLHTTP object for various browsers…
            xhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } 
    catch (e) {
            try {
            xhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } 
        catch (e2) {
         // This block handles Mozilla/Firefox browsers...
                try {
                    xhttp = new XMLHttpRequest();
                } 
            catch (e3) {
                    xhttp = false;
                }
            }
        }
    return xhttp; // Return the XMLHTTP object
}

var http = getXHTTP(); // This executes when the page first loads.
在上面的示例中,我知道我可以调用另一个函数,如
showUpload(obj)
inside
calShowUpload()
,以实现我的目标,但我需要这样的功能:

function showUpload(obj)
{
      http.open("GET", "./showUpload.php", true);
      http.open("GET", "./showDelete.php", true);
    http.onreadystatechange = calShowUpload;
    http.send(null);
}

您需要两个XMLHttpRequest实例,否则第二个实例将踩下第一个实例。使用现有代码执行此操作最简单的方法就是创建两个实例,并编写JS以使用适合任务的实例

var http1 = getXHTTP(); // Use this for one request.
var http2 = getXHTTP(); // Use this for the other request.

没问题。这实际上是一个非常普遍的问题。另一种解决方案(如果最终得到三个或四个以上的xhr实例)是构建队列机制。不要一次执行所有请求,而是将它们放入队列并执行第一行。然后,当一个请求的响应到达时,触发下一个请求,依此类推。如果它变得比这复杂得多,我会说使用一个库,比如jQuery,来抽象掉所有的复杂性。