AJAX 同步异步请求

2016-12-16 18:57:48来源:CSDN作者:ldc5306590人点击

  发送AJAX请求经常不注意 async 这个值会导致浪费时间去debug 和其他的console.log都很难找出原因,仔细点就容易发现该问题。

  做一个压缩zip功能,因为一个ajax 请求  导致数据导不出来


 <script type="text/javascript">
       // 当把asyn设为false时,这时ajax的请求时同步的,也就是说,这个时候ajax块发出请求后,他会等待在function1()这个地方,不会去执行function2(),直到function1()部分执行完毕。
       // 当把asyn设为true时,这时ajax的请求时异步的,当ajax块发出请求后,他将停留function1(),等待server端的返回,但同时(在这个等待过程中),前台会去执行            function2(),
       $(document).ready(function () {
           $.ajax({
               type: "POST",
               url: "value.aspx?act=init",
               dataType: "html",
               async:true,           
               success: function (result) {   function1()  
                  
               }
           });
           function2();
        }


   );
       function function1() {
           alert('function1');
       }
       function function2() {
           alert('function2');
       }
 </script>

注意:
同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除。 
而异步则这个AJAX代码运行中的时候其他代码一样可以运行。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台