jQuery.getJSON()
格式:jQuery.getJSON( url [,data] [,success(data,textStatus,jqXHR)] ), 三个参数分别死请求地址, 要传递的参数, 回调函数
This is a shorthand Ajax function,which is equivalent to: $.ajax({ url: url, dataType: 'json', data: data, success: callback });
The
As of jQuery 1.5,the
如果在服务器端没有指定返回数据的格式, 我们可以讲返回值使用$.parseJSON()处理一下, 如果在服务器端已经处理, 那么在函数中可以直接使用。比如: 在服务器端的代码: <% 注意:格式良好的JSON应该使用双引号讲字符串括起来。否则可能在解析的出错!
这时, 回调函数中可以直接使用: $.getJSON("http://localhost:8080/jqueryTest2", 如果在服务端没有这句: response.setContentType("text/json"); 那么在回调函数中要对返回的数据进行处理: $.getJSON("http://localhost:8080/jqueryTest2", json=$.parseJSON(json); alert(json[0].name); $.parseJSON()方法可以将一个JSON格式的字符串解析为对象。
继续, 在jquery1.5中, 回调函数会接收XMLHttpRequest对象, jsonp和跨域的get请求没有使用XMLHttpRequest对象(为什么?),所以jQuery.getJSON( url [,jqXHR)] )中的参数
Additional Notes:
这是说, 大部分ajax请求由于同源策略而受到限制, 导致请求不能够成功从其他域获取数据, 所谓非同域指的是:不同的域名之间, 子域名和上级域名之间,以及不同协议的域名之间。
JSONP If the URL includes the string "callback=?" (or similar,as defined by the server-side API),the request is treated as JSONP instead. See the discussion of the
关于跨域, 下一篇再总结。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |