$.json用法详解

原文:http://www.365mini.com/page/jquery_getjson.htm

1. 简介

$.getJSON():用于http get形式的ajax请求,获取远程的JSON编码的数据

请求的url中包含“callback=?”的时候,jq会自动视作jsonp,并执行对应的回调函数来获取

服务器返回的json数据必须符合严格 的 json语法,例如:所有属性名称必须加上引号,所有字符串也必须加双引号。(单引号不行)

属于全局对象,通过异步的方式加载数据。

2. 语法

$.getJSON(url, [, data], [, success])

参数:

url:string类型 ,指定请求的url

data可选:string或者object类型   发送请求传递的 数据

success可选:function类型 请求成功后的回调。

  有三个参数:1.返回的数据,2.请求的状态文本 3.当前的jqXHR对象。

  // data 是该请求返回的数据( 可能经过处理)

  // textStatus 可能是"success" 

  // jqXHR是经过jq 封装好的XMLHttpReQuest对象(保留他本身的属性和方法)

返回值 :

  返回值 为jqXHR类型的,返回发送该请求的jqXHR对象

3.示例/说明

它的本质是$.ajax( ) 函数的简写形式

也就是 $.getJSON(url, data, success);

// 等价于

$.ajax(

  url: url,

  type: "get",

  data: data,

  success: success,

  dataType: "json"

); 

4. 具体用法 

// 获取数据,成功后弹出对话框

$.getJSON("index.php?type=json", function(data, textStatus, jqXHR){

  // 如果服务器返回的json格式的 数据是{"name": "leo", "age": 20}; 

  // jq已经将其转换成对应的js对象

  alert( data.name );

  alert( data.age);   

});

// 获取"/action.php?m=list&page=2&size=10"的JSON数据

$.getJSON("/action.php?m=list", {page:2, size: 10}, function(data, textStatus, jqXHR){

  // 服务器返回的数据

  // [ {"id":11, "title":"文章11"}, {"id":12, "title":"文章12"}, {"id":13, "title":"文章13"} ]

  // jq将获取的json格式的数据转换为js的数组

  

  for(var i in data){

    var obj = data[i];

    alert( obj.title );

  }

});

  

原文地址:https://www.cnblogs.com/helloLeon/p/5594652.html