ajax 同步异步true,async: false 实现AJAX同步请求 ( $.ajax同步/异步(async:false/true) )(示例代码)...
雖然說ajax用來執(zhí)行異步請求的比較多,但有時還是存在需要同步執(zhí)行的情況的。
比如:我需要通過ajax取執(zhí)行請求以返回一個值,這個值在ajax后面是需要使用到的,這時就不能用異步請求了。這時候就需要使用到async這個屬性了。
async:true,(默認),異步方式,$.Ajax執(zhí)行后,會繼續(xù)執(zhí)行ajax后面的腳本,直到服務(wù)器端返回數(shù)據(jù)后,觸發(fā)$.Ajax里的success方法,這時候執(zhí)行的是兩個線程。
async:false,同步方式,所有的請求均為同步請求,在沒有返回值之前,同步請求將鎖住瀏覽器,用戶其它操作必須等待請求完成才可以執(zhí)行。
例如:
var temp;
$.ajax({
async: false,
type : "POST",
url : defaultPostData.url,
dataType : ‘json‘,
success : function(data) {
temp=data;
}
});
alert(temp);
這個ajax請求為同步請求,在沒有返回值之前,alert(temp)是不會執(zhí)行的。
如果async設(shè)置為:true,則不會等待ajax請求返回的結(jié)果,會直接執(zhí)行ajax后面的語句:alert(temp);
個人理解:? 同步請求的適用場景==你需要鎖定瀏覽器窗口,讓用戶在請求未完成時不能進行任何操作。
總結(jié)
以上是生活随笔為你收集整理的ajax 同步异步true,async: false 实现AJAX同步请求 ( $.ajax同步/异步(async:false/true) )(示例代码)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ajax 示例代码,Ajax的简单实用实
- 下一篇: 服务器mvc提示404错误信息,解决Sp