您好,欢迎访问一九零五行业门户网

有关jQuery.getJSON() 函数的用法详解

jquery.getjson()函数用于通过http get形式的ajax请求获取远程json编码的数据。
json是一种数据格式,js原生支持json格式,通过jquery.getjson()从服务器获得的json数据,jquery会先尝试将其转为对应的js对象。
如果请求的url中包括callback=?等类似的部分,jquery会自动将其视作jsonp,并执行对应的回调函数来获取json数据。
重要注意:服务器返回的json数据必须符合严格的json语法,例如:所有属性名称必须加双引号,所有字符串值也必须加双引号(而不是单引号)。
请注意,该函数是通过异步方式加载数据的。
该函数属于全局jquery对象。
语法
jquery 1.0 新增该静态函数。
jquery.getjson( url [, data ] [, success ] )
参数
参数 描述
url string类型指定请求的目标url。
data 可选/string/object类型发送请求传递的数据。
success 可选/function类型请求成功时执行的回调函数。它有3个参数:其一是请求返回的数据,其二是请求状态文本(例如success、 notmodified),其三是当前jqxhr对象(jquery 1.4及之前版本,该参数为原生的xmlhttprequest对象)。
参数success指定的回调函数只有在请求成功时才会执行,如果请求失败(例如找不到页面、服务器错误等)则不作任何处理。
返回值
jquery.getjson()函数的返回值为jqxhr类型,返回发送该请求的jqxhr对象(jquery 1.4及以前版本返回的是原生的xmlhttprequest对象)。
示例&说明
jquery.getjson()是jquery.ajax()函数的如下简写形式:
jquery.getjson(url, data, success); // 等价于 $.ajax({ url: url, type: "get", data: data, success: success, datatype: "json" });
请参考以下这段html示例代码:
<div id="content1">codeplayer</div> <div id="content2">专注于编程开发技术分享</div> <div id="content3">http://www.365mini.com</div>
以下是与jquery.getjson()函数相关的jquery示例代码,以演示jquery.getjson()函数的具体用法:
//获取index.php?type=json的json数据,但不作任何处理 $.getjson( "index.php?type=json" ); // 等价于 index.php?id=5&orderid=5&money=100 $.getjson( "index.php?id=5", "orderid=5&money=100" ); // 等价于 http://localhost/index.php?id=5&orderid=5&money=100 $.getjson( "http://localhost/index.php?id=5", {orderid: 5, money: 100} ); /* ***** 一般不会使用上述不对获取的json数据作任何处理的用法***** */ // 获取index.php?type=json的json数据,获取成功时弹出对话框 $.getjson( "index.php?type=json", function(data, textstatus, jqxhr){ // data 是该请求返回的数据(可能经过处理) // textstatus 可能是"success"、 "notmodified"等 // jqxhr 是经过jquery封装的xmlhttprequest对象(保留其本身的所有属性和方法) // 如果服务器返回的json格式的数据是 {"id": 5, "name": "codeplayer"} // json格式的数据的属性名称必须加双引号,字符串值必须加双引号。 // jquery已经将其转换成对应的js对象 alert( data.id ); // 5 alert( data.name ); // codeplayer } ); // 获取"/action.php?m=list&page=2&size=10"的json数据,获取成功时弹出对话框 $.getjson( "/action.php?m=list", { page: 2, size: 10 }, function(data, textstatus, jqxhr){ // 如果服务器返回的json格式的数据是 [ {"id":11, "title":"文章11"}, {"id":12, "title":"文章12"}, {"id":13, "title":"文章13"} ] // jquery将获取的json格式数据转换为js数组 for(var i in data){ var obj = data[i]; alert( obj.title ); } } );
以上就是有关jquery.getjson() 函数的用法详解的详细内容。
其它类似信息

推荐信息