AJAX,即Asynchronous Javascript And XML,可實(shí)現(xiàn)無刷新狀態(tài)更新頁面和異步提交
優(yōu)點(diǎn):
不需要插件支持
用戶體驗(yàn)極佳
提升Web程序性能
減輕服務(wù)器和寬帶的負(fù)擔(dān)
缺點(diǎn):
前進(jìn)后退按鈕被破壞
搜索引擎的支持不夠
開發(fā)調(diào)試工具缺乏
同步和異步
同步:也就是必須一件一件事做,等前一件做完了才能做下一件事
異步:不需要等到前一件事做完,可多事同做
JQuery對AJAX進(jìn)行了三層封裝
最底層:封裝了基礎(chǔ)Ajax一些操作;
全局方法:$.ajax()
提交的數(shù)據(jù)在data中,用post方式提交,提交數(shù)據(jù)須用"{}"包裹,以"key:value"的形式提交
提交整個表單時,可使用表單序列化"serialize()",提交整個表單
decodeURIComponent():解序列化的數(shù)據(jù)
encodeURIComponent():將數(shù)據(jù)序列化,serialize()也是調(diào)用此方法進(jìn)行序列化
serializeArray():表單轉(zhuǎn)化為json形式
$.ajaxSetup():初始化$.ajax()的數(shù)據(jù),用于設(shè)定$.ajax()對象的默認(rèn)值
第二層:封裝了jQuery的Ajax;
局部方法:.load(url,data,callback)
比較適合靜態(tài)文件的異步獲取
全局方法:$.get(url,data,callback,type),$.post(url,data,callback,type)
可使用與動態(tài)文件異步獲取
第三層:封裝了get;
全局方法:$.getJSON,$.getScript
加載請求
$(document).ajaxStart(function):請求開始時,觸發(fā)的方法
$(document).ajaxStop(function):請求結(jié)束時,觸發(fā)的方法
JSON和JSONP
當(dāng)dataType為JSON時,無法跨域獲取數(shù)據(jù),要在添加域名后面添加"?callback="才能實(shí)現(xiàn)跨域名調(diào)用數(shù)據(jù)。當(dāng)dataType為JSONP時,可直接實(shí)現(xiàn)跨域獲取數(shù)據(jù)。
JQXHR對象
jQuery jqXHR對象的屬性和方法
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
標(biāo)簽:辛集 咸寧 商洛 紅河 佛山 股票 揭陽 荊州
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談Ajax相關(guān)及其優(yōu)缺點(diǎn)》,本文關(guān)鍵詞 淺談,Ajax,相關(guān),及其,優(yōu)缺點(diǎn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。