ajax中的async屬性值之同步和非同步及同步和非同步區別

來源:互聯網
上載者:User

標籤:net   success   port   結果   ref   family   $.ajax   方式   data   

在Jquery中ajax方法中async用於控制同步和非同步,當async值為true時是非同步請求,當async值為fase時是同步請求。ajax中async這個屬性,用於控制請求資料的方式,預設是true,即預設以非同步方式請求資料。



jquery中ajax方法有個屬性async用於控制同步和非同步,預設是true,即ajax請求預設是非同步請求,有時項目中會用到AJAX同步。這個同步的意思是當JS代碼載入到當前AJAX的時候會把頁面裡所有的代碼停止載入,頁面出現假死狀態,當這個AJAX執行完畢後才會繼續運行其他字碼頁面假死狀態解除。而非同步則這個AJAX代碼運行中的時候其他代碼一樣可以運行。

ajax中async這個屬性,用於控制請求資料的方式,預設是true,即預設以非同步方式請求資料。

一、async值為true (非同步)

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

例如

?$.ajax({      type:"POST",     url:"Venue.aspx?act=init",      dataType:"html",     success:function(result){ //function1()      f1();       f2();      }     failure:function (result) {      ;      },  }  function2();

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

二、async值為false (同步)

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

例如

?

ajax中的async屬性值之同步和非同步及同步和非同步區別

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.