ajax中同步和異步

1、async值爲true (異步html

當ajax發送請求後,在等待server端返回的這個過程當中,前臺會繼續 執行ajax塊後面的腳本,直到server端返回正確的結果纔會去執行success,也就是說這時候執行的是兩個線程,ajax塊發出請求後一個線程 和ajax塊後面的腳本(另外一個線程)ajax

 

例如異步

 

$.ajax({   

         type:"POST",  

         url:"Venue.aspx?act=init",  

         dataType:"html",  

         success:function(result){   //function1()

             f1();  

             f2();  

         }  

         failure:function (result) {   

            alert('Failed');   

         },  

  }  

  function2();

 

在上例中,當ajax塊發出請求後,他將停留function1(),等待server端的返回,但同時(在這個等待過程當中),前臺會去執行function2()。async

 


2、async值爲false (同步url

當執行當前AJAX的時候會中止執行後面的JS代碼,直到AJAX執行完畢後時,才能繼續執行後面的JS代碼。spa

 

例如線程

 

$.ajax({   

        type:"POST",  

        url:"Venue.aspx?act=init",  

        dataType:"html",  

        async: false,

        success:function(result){   //function1()
 
             f1();  

             f2();  

         }  

        failure:function (result){   

            alert('Failed');   

         },  

  }  

  function2();

這個時候ajax塊發出請求後,他會等待在function1()這個地方,不會去執行function2(),直到function1()部分執行完畢。code



參考資料: ajax同步和異步的區別  http://www.studyofnet.com/news/1025.htmlserver

相關文章
相關標籤/搜索