jQuery ajax - getJSON() -menetelmä
Esimerkki
Hanki JSON-tietoja AJAX-pyynnöllä ja tulosta tulokset:
$("button").click(function(){ $.getJSON("demo_ajax_json.js",function(result){ $.each(result, function(i, field){ $("div").append(field + " "); }); }); });
Määrittely ja käyttö
Lataa JSON-tietoja HTTP GET-pyynnöllä.
jQuery 1.2:ssa voit ladata muita verkkotiloja olevia JSON-tietoja JSONP-vastauksen avulla, kuten "myurl?callback=?". jQuery korvaa ? oikealla funktion nimellä suorittaakseen paluutoiminnon. Huomio: Tämä rivi ja sen jälkeen oleva koodi suoritetaan ennen paluutoiminnon suorittamista.
Syntaksi
jQuery.getJSON(url,data,success(data,status,xhr))
Parametrit | Kuvaus |
---|---|
url | Välttämätön. Määrittää, mihin URL-osoitteeseen pyyntö lähetetään. |
data | Valinnainen. Määrittää tiedot, jotka lähetetään palvelimelle. |
success(data,status,xhr) |
可选。规定当请求成功时运行的函数。 额外的参数:
|
详细说明
该函数是简写的 Ajax 函数,等价于:
$.ajax({ url: url, data: data, success: callback, dataType: json });
发送到服务器的数据可作为查询字符串附加到 URL 之后。如果 data 参数的值是对象(映射),那么在附加到 URL 之前将转换为字符串,并进行 URL 编码。
传递给 callback 的返回数据,可以是 JavaScript 对象,或以 JSON 结构定义的数组,并使用 $.parseJSON() 方法进行解析。
示例
从 test.js 载入 JSON 数据并显示 JSON 数据中一个 name 字段数据:
$.getJSON("test.js", function(json){ alert("JSON Data: " + json.users[3].name); });
更多示例
例子 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: "Bill", time: "2pm" }, function(json){ alert("JSON Data: " + json.users[3].name); });