執行個體
從 test.js 載入 JSON 資料並顯示 JSON 資料中一個 name 欄位資料:
複製代碼 代碼如下:
$.getJSON("test.js", function(json){
alert("JSON Data: " + json.users[3].name);
});
定義和用法
通過 HTTP GET 請求載入 JSON 資料。
在 jQuery 1.2 中,您可以通過使用 JSONP 形式的回呼函數來載入其他網域的 JSON 資料,如 "myurl?callback=?"。jQuery 將自動替換 ? 為正確的函數名,以執行回呼函數。 注意:此行以後的代碼將在這個回呼函數執行前執行。
文法
jQuery.getJSON(url,[data],[callback])
參數 描述
url 待載入頁面的 URL 地址。
data 待發送 Key / value 參數。
callback 載入成功時執行的回呼函數。
詳細說明
該函數是簡寫的 Ajax 函數,等價於:
複製代碼 代碼如下:
$.ajax({
url: url,
data: data,
success: callback,
dataType: json
});
發送到伺服器的資料可作為查詢字串附加到 URL 之後。如果 data 參數的值是對象(映射),那麼在附加到 URL 之前將轉換為字串,並進行 URL 編碼。
傳遞給 callback 的返回資料,可以是 JavaScript 對象,或以 JSON 結構定義的數組,並使用 $.parseJSON() 方法進行解析。
更多執行個體
例子 1
從 Flickr JSONP API 載入 4 張最新的關於貓的圖片:
HTML 程式碼:
複製代碼 代碼如下:
<div id="images"></div>
jQuery 代碼:
複製代碼 代碼如下:
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?
tags=cat&tagmode=any&format=json&jsoncallback=?", function(data){
$.each(data.items, function(i,item){
$("<img/>").attr("src", item.media.m).appendTo("#images");
if ( i == 3 ) return false;
});
});
例子 2
從 test.js 載入 JSON 資料,附加參數,顯示 JSON 資料中一個 name 欄位資料:
複製代碼 代碼如下:
$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){
alert("JSON Data: " + json.users[3].name);
});