首頁 > web前端 > js教程 > 主體

理解jquery ajax中的datatype屬性選項值

亚连
發布: 2018-05-24 15:20:38
原創
3005 人瀏覽過

jquery中ajax的dataType屬性用於指定伺服器傳回的資料類型,如果不指定,jQuery 將自動根據HTTP包MIME資訊來智慧判斷,如果datatype選項不填入的話,會將傳回的資料當成字串處理。

jquery中ajax的dataType屬性用於指定伺服器回傳的資料類型,如果不指定,jQuery 將自動根據HTTP包MIME資訊來智慧判斷,如果datatype選項不填寫的話,會將傳回的資料當成字串處理。

一、ajax語法

jQuery.ajax([settings])

參數說明

settings:用於設定Ajax請求的鍵值對集合。可以透過 $.ajaxSetup() 設定任何選項的預設值。

二、ajax的datatype選項的值

1、"xml":傳回 XML 文檔,可用 jQuery 處理。

2、"html"::傳回純文字 HTML 資訊;包含的 script 標籤會在插入 dom 時執行。

3、"script"::傳回純文字JavaScript 程式碼。不會自動快取結果,除非設定了 "cache" 參數。注意:在遠端請求時(不在同一個網域下),所有 POST 請求都會轉為 GET 請求。 (因為將使用 DOM 的 script標籤來載入)

4、"json": 傳回 JSON 資料 。

5、"jsonp": JSONP 格式。使用JSONP 形式呼叫函數時,如 "myurl?callback=?" jQuery 將自動替換 ? 為正確的函數名,以執行回呼函數,經常被用來同主域名下不同二級域名下的跨域請求。

6、"text": 傳回純文字字串。

下面是關於jquery ajax中的datatype相關問題

datatype設定為html的時候返回的只是純文本,沒有什麼好說的,設定成xml的時候返回的是一個xml document對象,
比如返回下面這麼一個xml

< xml version="1.0" encoding="utf-8" >
<documentElement>
<table>
<provinceID>110000</provinceID>
<province>北京市</province>
<provinceID>120000</provinceID>
<province>天津市</province>
</table>
</documentElement>
登入後複製

這就需要用XMLDocument之類來操作,還要考慮瀏覽器
其實jquery本身也可以解析xml,舉個簡單的例子

$.ajax({
type: "Get",
dataType: "xml",
url: "test.xml",
success: function(datas){
$("province",datas).each(function(i){ 
alert($($("provinceID",datas)[i]).text() + "_" + $(this).text());
});
}
});
登入後複製

test.xml裡面的內容就是上面的xml,這樣datas就是回傳的xml文檔對象,lz可以自己試試看

其實相對來說我比較喜歡使用datatype:"json",使用json資料對於javascript來說解析起來就更方便了

上面是我整理給大家的,希望今後會對大家有幫助。

相關文章:

基於Jquery ajax技術實現間隔N秒傳值向某頁傳值

基於Jquery.history解決ajax的前進後退問題

Ajax請求session失效該如何解決

#

以上是理解jquery ajax中的datatype屬性選項值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板