国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery中的ajax async同步和異步詳解

2019-11-20 11:30:16
字體:
供稿:網(wǎng)友

項(xiàng)目中有這樣一個(gè)需求,使用ajax加載數(shù)據(jù)返回頁面并賦值,然后前端取出該值

這其中涉及到代碼的順序問題,有時(shí)后臺(tái)還未返回?cái)?shù)據(jù),但已執(zhí)行后面代碼,

所以就會(huì)造成取不到值

$.ajax({ type: "post",  url: "admin/PfmOptionRuleItem.do", success: function(data){  $("#ruleItem").val(data.ruleItem); //① } }); return $("#ruleItem").val(); //②

如果①還未從后臺(tái)返回?cái)?shù)據(jù) 此時(shí)執(zhí)行②就獲取不到值

Ajax的第一個(gè)字母是asynchronous的開頭字母,這意味著所有的操作都是并行的,完成的順序沒有前后關(guān)系。

$.ajax()的async參數(shù)總是設(shè)置成true,這標(biāo)志著在請求開始后,其他代碼依然能夠執(zhí)行。

如果把這個(gè)選項(xiàng)設(shè)置成false,這意味著所有的請求都不再是異步的了,這也會(huì)導(dǎo)致瀏覽器被鎖死。

雖然官方不建議這么干,只是不能用太多,否則會(huì)造成用戶體驗(yàn)不佳

舉個(gè)栗子

alert("setp 1"); $.ajax({  url: "admin/PfmOptionRuleItem.do",  async: false,  success: function(data){   alert("hello ajax"); //①  } }); alert("setp 2"); //②

當(dāng)把a(bǔ)syn設(shè)為false時(shí),這時(shí)ajax的請求時(shí)同步的,也就是說,這個(gè)時(shí)候ajax塊發(fā)出請求后,

他會(huì)等待在①這個(gè)地方,不會(huì)去向下執(zhí)行②,直到①執(zhí)行完畢

此時(shí)依次執(zhí)行順序?yàn)?/p>

setp 1

hello ajax

setp 2

如果async為true 則執(zhí)行順序?yàn)?/p>

setp 1

setp 2

hello ajax

關(guān)于本文給大家敘述的jQuery中的ajax async同步和異步,全部介紹完了,希望對大家有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 肥东县| 托里县| 砚山县| 景谷| 马山县| 武隆县| 抚顺市| 海淀区| 图们市| 汕头市| 曲麻莱县| 海门市| 全椒县| 临安市| 通榆县| 谢通门县| 新龙县| 浦东新区| 芮城县| 沿河| 定南县| 临城县| 宜城市| 吴桥县| 枝江市| 老河口市| 洛浦县| 响水县| 通城县| 兴业县| 集贤县| 蓬莱市| 黄大仙区| 昭觉县| 凌源市| 阿图什市| 许昌市| 金山区| 海安县| 阿拉善盟| 平果县|