jQuery+ajax での getJSON() の使用例

高洛峰
高洛峰オリジナル
2017-01-12 10:04:091118ブラウズ


test.js から JSON データをロードし、JSON データ内の名前フィールド データを表示します:

$.getJSON("test.js", function(json){
  alert("JSON Data: " + json.users[3].name);
});

定義と使用法
HTTP GET リクエストを通じて JSON データをロードします。

jQuery 1.2 では、「myurl?callback=?」などの JSONP 形式のコールバック関数を使用して、他のドメインから JSON データをロードできます。 jQuery は、コールバック関数を実行するために、? を正しい関数名に自動的に置き換えます。 注: この行以降のコードは、このコールバック関数が実行される前に実行されます。

構文
jQuery.getJSON(url,[data],[callback])

パラメータの説明
url ロードされるページの URL アドレス。
data 送信されるキー/値パラメータ。
callback ロードが成功したときに実行されるコールバック関数。

詳細な説明

この関数は、Ajax 関数の短縮形であり、以下と同等です:

$.ajax({
  url: url,
  data: data,
  success: callback,
  dataType: json
});

サーバーに送信されたデータは、クエリ文字列として URL に追加できます。 data パラメーターの値がオブジェクト (マップ) の場合、URL に追加される前に文字列に変換され、URL エンコードされます。

コールバックに渡される戻りデータは、JavaScript オブジェクトまたは JSON 構造で定義された配列であり、$.parseJSON() メソッドを使用して解析されます。

その他の例

例 1
Flickr から猫に関する最新の写真 4 枚をロードする JSONP API:

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 データの名前フィールド データ:

$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){
  alert("JSON Data: " + json.users[3].name);
});

jQuery+ajax での getJSON() の使用例に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。