AJAX是一種與服務(wù)器交換數(shù)據(jù)的技術(shù),可以更新網(wǎng)頁(yè)的一部分,同時(shí)補(bǔ)充整個(gè)頁(yè)面。接下來,通過這篇文章,我們將介紹ajax的一些常見方法,如果需要,我們可以一起學(xué)習(xí)。
1.url:
需要將請(qǐng)求的地址作為字符串類型的參數(shù)發(fā)送(默認(rèn)為當(dāng)前頁(yè)面地址)。
2 .類型:
字符串類型的參數(shù)是必需的,默認(rèn)情況下請(qǐng)求方法(post或get)是get。請(qǐng)注意,也可以使用其他http請(qǐng)求方法,如put和delete,但只有部分瀏覽器支持。
3 .超時(shí):
需要為數(shù)字類型的參數(shù)設(shè)置請(qǐng)求超時(shí)時(shí)間(毫秒)。此設(shè)置覆蓋$的全局設(shè)置。ajaxSetup()方法。
4.async:
要求是一個(gè)布爾參數(shù),默認(rèn)設(shè)置為真。所有請(qǐng)求都是異步請(qǐng)求。如果需要發(fā)送同步請(qǐng)求,請(qǐng)將此選項(xiàng)設(shè)置為false。請(qǐng)注意,同步請(qǐng)求將鎖定瀏覽器,用戶的其他操作必須等待請(qǐng)求完成后才能執(zhí)行。
5 .緩存:
所需參數(shù)為布爾值,默認(rèn)值為真(當(dāng)數(shù)據(jù)類型為時(shí),默認(rèn)值為假)。如果設(shè)置為false,將不會(huì)從瀏覽器緩存中加載請(qǐng)求的信息。
6 .數(shù)據(jù):
對(duì)象或字符串類型的參數(shù)是必需的,數(shù)據(jù)被發(fā)送到服務(wù)器。如果不再是字符串,會(huì)自動(dòng)轉(zhuǎn)換成字符串格式。獲取請(qǐng)求將被附加到url。要防止這種自動(dòng)轉(zhuǎn)換,您可以檢查進(jìn)程數(shù)據(jù)選項(xiàng)。對(duì)象必須是鍵/值格式,例如{foo1:"bar1 ",foo2:"bar2"}轉(zhuǎn)換為& foo 1 = bar1 & amp;foo2=bar2 .如果是數(shù)組,JQuery會(huì)自動(dòng)給不同的值起相同的名字。例如,{foo:["bar1 "," bar2"]}轉(zhuǎn)換為& amp;foo = bar1 & ampfoo=bar2 .
7 .數(shù)據(jù)類型:
應(yīng)為字符串類型的參數(shù),應(yīng)為服務(wù)器返回的數(shù)據(jù)類型。如果沒有指定,JQuery會(huì)根據(jù)http包的mime信息自動(dòng)返回responseXML或responseText,并作為回調(diào)函數(shù)參數(shù)傳遞。可用類型如下:
Xml:返回一個(gè)XML文檔,可以用JQuery處理。
html:返回純文本HTML信息;插入DOM時(shí)會(huì)執(zhí)行包含的標(biāo)記。
:返回純文本Java代碼。結(jié)果不會(huì)自動(dòng)緩存。除非設(shè)置了緩存參數(shù)。注意遠(yuǎn)程請(qǐng)求(不在同一個(gè)域下),所有的post請(qǐng)求都會(huì)轉(zhuǎn)換成get請(qǐng)求。
Json:返回JSON數(shù)據(jù)。
Jsonp:JSONP格式。當(dāng)調(diào)用SONP形式的函數(shù)時(shí),比如myurl?回調(diào)=?,JQuery會(huì)自動(dòng)替換下一個(gè)“?”執(zhí)行回調(diào)函數(shù)的正確函數(shù)名。
Text:返回純文本字符串。
8 .發(fā)送前:
它必須是函數(shù)類型的參數(shù)。在發(fā)送請(qǐng)求之前,您可以修改對(duì)象的功能,例如添加一個(gè)自定義的HTTP頭。如果您在beforeSend中返回false,您可以取消這個(gè)ajax請(qǐng)求。對(duì)象是唯一的參數(shù)。
function(){
這個(gè);//調(diào)用此ajax請(qǐng)求時(shí)傳遞的選項(xiàng)參數(shù)
}
9 .完成:
需求是Function類型的參數(shù),它是在請(qǐng)求完成后調(diào)用的回調(diào)函數(shù)(在請(qǐng)求成功或失敗時(shí)調(diào)用)。參數(shù):對(duì)象和描述成功請(qǐng)求類型的字符串。
函數(shù)(,textStatus){
這個(gè);//調(diào)用此ajax請(qǐng)求時(shí)傳遞的選項(xiàng)參數(shù)
}
10 .成功:要求是函數(shù)類型的參數(shù)。請(qǐng)求成功后調(diào)用的回調(diào)函數(shù)有兩個(gè)參數(shù)。
(1)由服務(wù)器返回并根據(jù)dataType參數(shù)處理的數(shù)據(jù)。
(2)描述狀態(tài)的字符串。
功能(數(shù)據(jù),文本狀態(tài)){
//數(shù)據(jù)可能是xmlDoc、jsonObj、html、文本等等
這個(gè);//調(diào)用此ajax請(qǐng)求時(shí)傳遞的選項(xiàng)參數(shù)
}
11 .錯(cuò)誤:
所需參數(shù)的類型為“函數(shù)”,當(dāng)請(qǐng)求失敗時(shí)會(huì)調(diào)用該函數(shù)。該函數(shù)有三個(gè)參數(shù),即對(duì)象、錯(cuò)誤信息和捕獲的錯(cuò)誤對(duì)象(可選)。ajax事件函數(shù)如下:
函數(shù)(,文本狀態(tài),錯(cuò)誤拋出){
//通常,textStatus和errorThrown中只有一個(gè)包含信息
這個(gè);//調(diào)用此ajax請(qǐng)求時(shí)傳遞的選項(xiàng)參數(shù)
}
12 .內(nèi)容類型:
字符串類型的參數(shù)是必需的。向服務(wù)器發(fā)送信息時(shí),內(nèi)容編碼類型默認(rèn)為“application/x-www-form-URL encoded”。該默認(rèn)值適用于大多數(shù)應(yīng)用。
13 .數(shù)據(jù)過濾器:
要求是Function類型參數(shù),對(duì)Ajax返回的原始數(shù)據(jù)進(jìn)行預(yù)處理。提供了數(shù)據(jù)和類型兩個(gè)參數(shù)。數(shù)據(jù)是Ajax返回的原始數(shù)據(jù),類型是調(diào)用jQuery.ajax時(shí)提供的dataType參數(shù)。該函數(shù)返回的值將由jQuery進(jìn)一步處理。
函數(shù)(數(shù)據(jù),類型){
//返回處理后的數(shù)據(jù)
返回?cái)?shù)據(jù);
}
14 .數(shù)據(jù)過濾器:
要求是Function類型參數(shù),對(duì)Ajax返回的原始數(shù)據(jù)進(jìn)行預(yù)處理。提供了數(shù)據(jù)和類型兩個(gè)參數(shù)。數(shù)據(jù)是Ajax返回的原始數(shù)據(jù),類型是調(diào)用jQuery.ajax時(shí)提供的dataType參數(shù)。該函數(shù)返回的值將由jQuery進(jìn)一步處理。
函數(shù)(數(shù)據(jù),類型){
//返回處理后的數(shù)據(jù)
返回?cái)?shù)據(jù);
}
15 .全球:
布爾類型的參數(shù)是必需的,默認(rèn)值為真。指示是否觸發(fā)全局ajax事件。設(shè)置為false不會(huì)觸發(fā)全局ajax事件,ajaxStart或ajaxStop可以用來控制各種ajax事件。
16 .如果修改:
布爾類型的參數(shù)是必需的,默認(rèn)值為假。僅當(dāng)服務(wù)器數(shù)據(jù)改變時(shí)獲取新數(shù)據(jù)。最后修改的報(bào)頭信息用于判斷服務(wù)器數(shù)據(jù)的變化。默認(rèn)值為false,即忽略標(biāo)題信息。
17.jsonp:
需要將jsonp請(qǐng)求中回調(diào)函數(shù)的名稱重寫為String類型的參數(shù)。此值用于代替“回調(diào)=?”此GET或POST請(qǐng)求中URL參數(shù)的“回調(diào)”部分,如{ jsonp:' onjsonload ' },將導(dǎo)致“onJsonPLoad =?”發(fā)送到服務(wù)器。
18 .用戶名:
需要字符串類型的參數(shù),用于響應(yīng)HTTP訪問身份驗(yàn)證請(qǐng)求的用戶名。
19 .密碼:
所需參數(shù)為String,用于響應(yīng)HTTP訪問認(rèn)證請(qǐng)求的密碼。
20 .過程數(shù)據(jù):
布爾類型的參數(shù)是必需的,默認(rèn)值為真。默認(rèn)情況下,發(fā)送的數(shù)據(jù)將被轉(zhuǎn)換為對(duì)象(技術(shù)上不是字符串),以匹配默認(rèn)內(nèi)容類型“application/x-www-form-URL encoded”。如果您想發(fā)送DOM樹信息或其他不想轉(zhuǎn)換的信息,請(qǐng)?jiān)O(shè)置為false。
21.字符集:
String類型的參數(shù)是必需的,并且只有當(dāng)在請(qǐng)求時(shí)dataType是“jsonp”或“”并且類型是GET時(shí),它們才會(huì)被用來強(qiáng)制修改字符集。通常,本地和遠(yuǎn)程內(nèi)容編碼使用不同。
案例代碼:
$( function(){ $('#send '))。click( function(){ $)。ajax({ type: "GET ",url: "test.json ",數(shù)據(jù):{username:$("#username ")。val(),內(nèi)容:$("#content ")。val()},DataType:“JSON”,success:function(data){ $(' # ResText ').empty();//clear空restext中的所有內(nèi)容varhtml =$.每個(gè)(數(shù)據(jù)、函數(shù)(commentIndex、comment){ html+= ' & lt;div class="comment " >& lt' h6 >'+注釋[' username ']+':& lt;/h6>。& ltp class="para"' +注釋['content' ] + '<。/p>。& lt/div & gt;';});$('#resText ')。html(html);} });});});
1.《ajax $.ajax方法詳解》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。
2.《ajax $.ajax方法詳解》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。
3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來源地址,http://f99ss.com/jiaoyu/1604758.html