天天看點

$.ajax同步/異步(async:false/true)解析

  $.ajax 同步/異步(async:false/true)

  雖然說ajax用來執行異步請求的比較多,但有時還是存在需要同步執行的情況的。

  比如:我需要通過ajax取執行請求以傳回一個值,這個值在ajax後面是需要使用到的,這時就不能用異步請求了。這時候就需要使用到async這個屬性了。

  async:true,(預設),異步方式,$.Ajax執行後,會繼續執行ajax後面的腳本,直到伺服器端傳回資料後,觸發$.Ajax裡的success方法,這時候執行的是兩個線程。

  async:false,同步方式,所有的請求均為同步請求,在沒有

二手域名買賣

傳回值之前,同步請求将鎖住浏覽器,使用者其它操作必須等待請求完成才可以執行。

  例如:

  [html]view plaincopy

  vartemp; $.ajax({ async:false, type:"POST", url:defaultPostData.url, dataType:'json', success:function(data){ temp=data; } }); alert(temp);

  這個ajax請求為同步請求,在沒有傳回值之前,alert(temp)是不會執行的。

  如果async設定為:true,則不會等待ajax請求傳回的結果,會直接執行ajax後面的語句:alert(temp);