最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery.getJSON()

jQuery.getJSON( url, [ data ], [ success(data, textStatus, jqXHR) ] ) 返回: jqXHR

描述:通過(guò) HTTP GET 請(qǐng)求從服務(wù)器載入 JSON 數(shù)據(jù)。

  • version added: 1.0jQuery.getJSON( url, [ data ], [ success(data, textStatus, jqXHR) ] )

    url一個(gè)包含發(fā)送請(qǐng)求的URL字符串

    data向服務(wù)器發(fā)送請(qǐng)求的Key/value參數(shù)

    success(data, textStatus, jqXHR)當(dāng)請(qǐng)求成功后執(zhí)行的回調(diào)函數(shù)。

這是一個(gè)快速的AJax處理函數(shù),相當(dāng)于:

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

數(shù)據(jù)發(fā)送到服務(wù)器是作為一個(gè)附加到查詢字符串的URL。如果該值的data參數(shù)是一個(gè)對(duì)象,它會(huì)轉(zhuǎn)換為一個(gè)字符串和URL編碼,然后才追加到URL。

大多數(shù)實(shí)現(xiàn)將指定一個(gè)成功的處理程序:

$.getJSON('ajax/test.json', function(data) {
  var items = [];

  $.each(data, function(key, val) {
    items.push('<li id="' + key + '">' + val + '</li>');
  });

  $('<ul/>', {
    'class': 'my-new-list',
    html: items.join('')
  }).appendTo('body');
});

這個(gè)例子,當(dāng)然遵循JSON文件的結(jié)構(gòu):

{
  "one": "Singular sensation",
  "two": "Beady little eyes",
  "three": "Little birds pitch by my doorstep"
}

使用這種結(jié)構(gòu),這個(gè)例子遍歷請(qǐng)求的數(shù)據(jù),建立了一個(gè)無(wú)序列表,并追加到“body”。

success回調(diào)是通過(guò)返回的數(shù)據(jù),通常是一個(gè)JavaScript對(duì)象或數(shù)組所定義的JSON結(jié)構(gòu)和解析使用$.parseJSON()方法。它也通過(guò)了響應(yīng)文本狀態(tài)。

在jQuery 1.5,,在success回調(diào)函數(shù)接收一個(gè)“jqXHR”對(duì)象 ( 在jQuery 1.4中 ,它收到XMLHttpRequest對(duì)象)。然而,由于JSONP形式和跨域的GET請(qǐng)求不使用的XHR,在這些情況下, jqXHRtextStatus回調(diào)參數(shù)傳遞的成功是不確定的。

重要的: 在jQuery 1.4,如果JSON文件包含一個(gè)語(yǔ)法錯(cuò)誤,該請(qǐng)求通常會(huì)靜靜的失敗。避免頻繁手工編輯JSON數(shù)據(jù)就是這個(gè)原因。JSON是一種與語(yǔ)法規(guī)則比JavaScript的對(duì)象文字符號(hào)更加嚴(yán)格的數(shù)據(jù)交換格式。例如,所有在JSON字符串表示,無(wú)論是屬性或值,必須用雙引號(hào)括起來(lái)。例如,所有在JSON字符串表示,無(wú)論是屬性或值,必須用雙引號(hào)括起來(lái)。為了將JSON格式的細(xì)節(jié)上,看到http://json.org/

JSONP

如果URL包含字符串“回調(diào)=?”(或類似的,由服務(wù)器端API定義),請(qǐng)求被視為JSONP形式代替。見的討論jsonp的數(shù)據(jù)類型$.ajax()的更多細(xì)節(jié)。

jqXHR 對(duì)象

所有jQuery的Ajax方法都返回超集XMLHTTPRequest對(duì)象。這個(gè)jQuery XHR對(duì)象,或“jqXHR”

在jQuery 1.5,所有jQuery的Ajax方法都返回的超集XMLHTTPRequest對(duì)象。這個(gè)jQuery XHR對(duì)象,或“jqXHR,”通過(guò)$.getJSON()約定的接口實(shí)現(xiàn)返回,給它的所有屬性,方法和約定的行為(見Deferred object獲取更多信息)。為了方便和一致性,回調(diào)名稱使用$.ajax(),它提供.error() .success().complete()方法。這些方法當(dāng)$.ajax()請(qǐng)求終止時(shí)需要一個(gè)函數(shù)參數(shù)調(diào)用,這個(gè)函數(shù)接收$.ajax()回調(diào)函數(shù)名相同的參數(shù)。

在jQuery 1.5的約定接口也使jQuery的Ajax方法,其中包括$.getJSON() ,以鏈多個(gè).success(), .complete().error()回調(diào)的一個(gè)請(qǐng)求,甚至回調(diào)后分配這些請(qǐng)求可能已經(jīng)完成。如果請(qǐng)求已經(jīng)完成,立即觸發(fā)回調(diào)。

// Assign handlers immediately after making the request,
// and remember the jqxhr object for this request
var jqxhr = $.getJSON("example.json", function() {
  alert("success");
})
.success(function() { alert("second success"); })
.error(function() { alert("error"); })
.complete(function() { alert("complete"); });

// perform other work here ...

// Set another completion function for the request above
jqxhr.complete(function(){ alert("second complete"); });

其他注意事項(xiàng):

  • 由于瀏覽器的安全限制,大多數(shù)“Ajax”的要求,均采用同一起源的政策 ;該請(qǐng)求不能成功地檢索來(lái)自不同的域,子域或協(xié)議的數(shù)據(jù)。
  • Script和JSONP形式請(qǐng)求不受同源策略的限制。

Examples:

Example: 從 Flickr JSONP API中加載最近的四張標(biāo)簽為貓的圖片:

<!DOCTYPE html>
<html>
<head>
  <style>img{ height: 100px; float: left; }</style>
  <script src="http://code.jquery.com/jquery-1.5.js"></script>
</head>
<body>
  <div id="images">

</div>
<script>
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?",
  {
    tags: "cat",
    tagmode: "any",
    format: "json"
  },
  function(data) {
    $.each(data.items, function(i,item){
      $("<img/>").attr("src", item.media.m).appendTo("#images");
      if ( i == 3 ) return false;
    });
  });</script>

</body>
</html>

Demo:

Example: 通過(guò)test.js加載這個(gè)JSON數(shù)據(jù),并使用返回的JSON數(shù)據(jù)中的 name值:

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

Example: 通過(guò)額外的Key/value參數(shù)從test.js加載這個(gè)JSON數(shù)據(jù),并使用返回的JSON數(shù)據(jù)中的 name值:

$.getJSON("test.js", { name: "John", time: "2pm" }, function(json) {
    alert("JSON Data: " + json.users[3].name);
    });
jQuery 1.6 API 中文版腳本之家整理、修訂 (2011年6月)
弋阳县| 视频| 图们市| 革吉县| 吐鲁番市| 光山县| 商河县| 舒兰市| 嘉荫县| 莱阳市| 泌阳县| 七台河市| 津南区| 华坪县| 芦山县| 湘潭市| 鞍山市| 湟源县| 吉水县| 寿阳县| 长顺县| 二连浩特市| 雅安市| 阿拉善左旗| 新竹县| 烟台市| 辽阳县| 开封县| 英吉沙县| 新昌县| 威信县| 涿州市| 武隆县| 张家口市| 同仁县| 偏关县| 靖安县| 双峰县| 文山县| 灵武市| 兴和县|