Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的多个GET请求_Javascript_Php_Curl - Fatal编程技术网

javascript中的多个GET请求

javascript中的多个GET请求,javascript,php,curl,Javascript,Php,Curl,我试图在我的项目中对4个不同的php文件发出多个get请求,但在所有请求都成功返回之前,我不知道将它们附加到表中。我已经尝试过将我所有的请求都包含在内,但我想知道除了必须将请求包含在内之外,是否还有更快的方法 我当前的代码: var content; var time_running; var next_episode; var air_date; $.get("functions_tv_name.php?name="+n, function(data){

我试图在我的项目中对4个不同的php文件发出多个get请求,但在所有请求都成功返回之前,我不知道将它们附加到表中。我已经尝试过将我所有的请求都包含在内,但我想知道除了必须将请求包含在内之外,是否还有更快的方法

我当前的代码:

    var content;
    var time_running;
    var next_episode;
    var air_date;
    $.get("functions_tv_name.php?name="+n, function(data){
            content = data;
            $.get("functions.php?name="+n, function(data){
            time_running = data;
                $.get("next_episode.php?name="+n, function(data){
                next_episode = data;    
                    $.get("show_air_time.php?name="+n, function(data){
                     air_date = data;
                     $('#tvResults').append('<tr><td>' + content + '</td><td>' + time_running + '</td><td>' + next_episode + '</td><td>' + air_date + '</td></tr>');
                    });
               });
          });
    });

你要做的就是马上把所有的东西都烧掉。并让每个$.get处理程序执行以下操作:

保存其结果,以便所有$.get处理程序都可以访问它 检查是否已成功解析所有$.get 您可以手动执行此操作,方法是跟踪对象中每个$.get的状态,并在解析每个$.get时检查该对象。这是一个非常粗略的轮廓

var states = {};
function all_done() {... check states, returns boolean }
// first req
states["req#1"] = {state:"pending", value:null}
$.get("req-1", function(...){
    ...
    states["req#1"].value = "..."
    states["req#1"].state = "resolved"
    if (all_done()) ...
}, error handler....)
// second req -- same thing

你说的更快是什么意思?更快的执行还是什么?如果您谈论的是执行,那么唯一更快的方法是创建一个php脚本,该脚本执行1 go.jQuery中所有4个脚本的操作。您的朋友是什么时候: