多个Ajax函数调用导致加载缓慢

时间:2016-04-19 15:00:40

标签: javascript jquery ajax

    function function1(val)
    {
       $.ajax({
         type: 'post',
         url: 'page1.php',
         data: {
           get_option:val
         },
         success: function (response) {
           document.getElementById("id1").value=response; 
           function2(val);
           function3(val);
           function4(val);
           function5(val);
         }
       });
    }

function function2(val)
    {
       $.ajax({
         type: 'post',
         url: 'page2.php',
         data: {
           get_option:val
         },
         success: function (response) {
           document.getElementById("id2").value=response; 
           function6(val);

         }
       });
    }

function function3(val)
    {
       $.ajax({
         type: 'post',
         url: 'page3.php',
         data: {
           get_option:val
         },
         success: function (response) {
           document.getElementById("id3").value=response; 

         }
       });
    }

这是我的一些函数function1成功部分我调用了function2,function3,function4,function5等其他函数。在我的第二个函数function2中,我在其成功部分调用了另一个函数function6,它有更多的时间来获得结果
如何避免这个等待时间......?

1 个答案:

答案 0 :(得分:0)

如果你的每个ajax请求都按顺序返回结果,则可能是会话阻塞有效。如果可以在不影响结果的情况下同时执行脚本,请尝试在PHP代码的早期添加以下内容:

session_write_close();  //let the next requests start

这将允许后续的ajax请求开始PHP处理,并且应该显着改善您的结果。