摘要:
ajax學習1中介紹了使用jquery封裝的ajax來接收伺服器端的文本資料以及使用XMLHttpReques對象來接收伺服器端的文本資料
ajax學習2中介紹了使用XMLHttpReques來接收伺服器的端XML資料,本節主要介紹使用jqery封裝的ajax使用XML格式接收伺服器端的資料。
由於很多知識都已經做了詳細介紹,本節只介紹需要修改的代碼,使用jqery封裝的ajax使用XML格式接收伺服器端的資料,web.xml、背景servet都不用改,
只是ajax.html中調用的方法名稱修改一下,改為新增加的javascript方法。
用到的主要的一個方法介紹:
jQuery.ajax(options):通過HTTP請求載入遠端資料,
傳回值:XMLHttpRequest
參數:options(可選),ajax請求設定。所有選項都是可選的。
主要選項介紹:
type (String) : (預設: "GET") 請求方式 ("POST" 或 "GET"), 預設為 "GET"。注意:其它 HTTP 要求方法,如 PUT 和 DELETE 也可以使用,但僅部分瀏覽器支援
url (String) : (預設: 當前頁地址) 發送請求的地址
data (Object,String) : 發送到伺服器的資料。將自動轉換為請求字串格式。GET 請求中將附加在 URL 後
dataType (String) : 預期伺服器返回的資料類型。
如果不指定,jQuery 將自動根據 HTTP 包 MIME 資訊返回 responseXML 或 responseText,並作為回呼函數參數傳遞,可用值:
"xml": 返回 XML 文檔,可用 jQuery 處理。
"html": 返回純文字 HTML 資訊;包含 script 元素。
"script": 返回純文字 JavaScript 代碼。不會自動緩衝結果。
"json": 返回 JSON 資料
success (Function) : 請求成功後回呼函數。參數:伺服器返回資料,資料格式
error (Function) : (預設: 自動判斷 (xml 或 html)) 請求失敗時調用時間
async (Boolean) : (預設: true) 預設設定下,所有請求均為非同步請求。
如果需要發送同步請求,請將此選項設定為 false。注意,同步請求將鎖住瀏覽器,使用者其它操作必須等待請求完成才可以執行
新增的javascript方法如下: 複製代碼 代碼如下:<!--使用者名稱稱的校正,採用jquery封裝的ajax,接收XML格式的響應資料-->
//通過$.ajax()方法 通過HTTP請求載入遠端資料
function verifyJqueryXML(){
var jqueryObj= $("#username");
var username= jqueryObj.val();
//javascript當中,一個簡單的對象的定義方法
//var obj={name:"abc",age:20};
//使用jquery的XMLHTTPRequest對象的get請求的封裝
$.ajax({
type:"POST",//請求方式
url:"AJAXXMLServer", //伺服器端的url地址
data:"name="+username, // 發送給伺服器端的資料
dataType:"xml", //告訴Jquery返回的資料格式
success:callback1 //定以互動完成,並且伺服器端正確返回資料時調用的回呼函數
}); //注意url和 dataType必須對應
}
function callback1(data){
//首先需要將dom的對象轉換成Jquery對象
var jqueryObj=$(data);
//擷取message節點
var message=jqueryObj.children();
//擷取常值內容
var text=message.text();
//將伺服器端的值動態顯示在頁面上
var resultObj=$("#result");
resultObj.html(text);
}
通過以上代得到,ajax.html中的調用javascript方法名稱應改為:verifyJqueryXML()