ajax请求json数据实例,ajax jsonp请求
ajax请求json数据返回什么类型
JSONArray json = JSONArray.fromObject(models); //list集合数据转json
response.getWriter().println(json);//传到前台
//ajax
success: function(data){
var models = eval("("+data+")");
var rows="";
for(var i in models){
rows =rows + "tr"+
"td"+models[i].statDate+"/td"+
"td"+models[i].endDate+"/td"+
"td"+models[i].name+"/td"+
"/tr" ;
}
$("#show_table").append(rows);//添加到table
PS:这是Servlet的写法
$('#send').click(function () {
$.ajax({
type : "GET",
url : "a.php",
dataType : "jsonp",
success : function (data) {
$.each(data.items, function (i, item) {
$("img class='para'/ ").attr("src", item.media.m).appendTo("#resText");
if (i == 3) {
return false;
}
});
}
});
});
$.ajax方法如下:
复制代码代码如下:
$.ajax({
type: "POST",
url: ctxRoot+'FolderAction!saveInformSetting.action',
data: 'jsonStr=' + inform_settingListStr,
dataType: "json",
complete: function(data){
//在这里做些事情,假设返回的json数据里有name这个属性
//有时候可以直接data.name或者data['name']去访问
//但有时候,却要通过var jsonData = eval("("+data.responseText+")");才可以通过jsonData.name访问,而且这种情况下,需要是complete而不是success
}
});
$.ajax(options)
这是最根本的JQuery Ajax方法,只有一个参数options,该options参数中包含了请求信息和回调函数的信息。参数内容都是key:value对形式出现,并且都是可选的。
语法如下:
$.ajax({options});
url:(string)发送请求的地址,可以是服务器页面也可以是WebService动作。
type:(string)请求方式,POST或GET
data:(object)向服务器发送请求时带去的数据。是key:value对形式,如:{name:"grayworm",sex:"male"},如果是数组{works:["work1","work2"]}
dataType:(string)预期返回的数据类型。xml,html,json,text等
beforeSend:(Function)发送ajax请求前被触发,如果返回false则取消本次请求。如果异步请求需要显示gif动画,那应当在这里设置相应img的可见。
js面试题,ajax请求时,如何解释json数据
后台返回的是json字符串,你可以把ajax的datatype设置为json,或者用json.parse,或者用var dataObj=eval("("+data+")"),这些都可以把json字符串转为对象,那样你就可以处理
如何使用ajax读取Json中的数据
首先要明白ajax的基本格式,参考下面的内容,可以发现,success是请求成功后服务器返回的数据,接收只需要把回调函数的值处理就可以了,如:
response:即为服务器返回的数据,{"uid":123,"name":"jghdream"},
输出如下:
....
success:?function(response){
????????console.log(response.uid);
????????console.log(response.name);
}
.....
以下是ajax的一些参数:
$.ajax({?
????type:'post',
????url:'/testajax.php',
????dataType:'json',
????data:{uid:uid,rands:Math.random()},
????success:?function(){
????????alert('ajax?return?success');
}});
url,类型:String,默认值: 当前页地址。发送请求的地址
data,?类型:String,发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 'foo=bar1foo=bar2'
dataType,类型:String,预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
"xml": 返回 XML 文档,可用 jQuery 处理。
"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
"json": 返回 JSON 数据 。
"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
"text": 返回纯文本字符串
success,当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。
ajax跨域请求json数据有几种方式
使用jquerygetJson进行跨域读取数据
实际getJson式根本原理ajax使用jsonp式
jquery用getJson调用获取远程数据并通json格式返函数原型:
jQuery.getJSON(url,data,success(data,status,xhr))
参数 描述
url 必需规定请求发送哪 URL
data 选规定连同请求发送服务器数据
success(data,status,xhr)
选规定请求功运行函数
额外参数:
response - 包含自请求结数据
status - 包含请求状态
xhr - 包含 XMLHttpRequest 象
该函数简写ajax函数实际等价于:
$.ajax({
url: url,
data: data,
success: callback,
dataType: json
});
言归传面我看何使用getJson跨域获取数据
html页面示例代码:
$.getJSON("xxx?",
function (data) {
alert(data);
}
);
执行原理:
发送请求需要传callback调函数名服务器端服务器端拿调函数名再返数据用参数形式反客户端客户端能够调
请列举jquery中关于ajax的常用的3种请求的基本用法
jQuery中ajax的4种常用请求方式:
1.$.ajax()返回其创建的 XMLHttpRequest 对象。
$.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信息。详细参数选项见下。
如果你指定了 dataType 选项,请确保服务器返回正确的 MIME 信息,(如 xml 返回 "text/xml")。
实例:
保存数据到服务器,成功时显示信息。
$.ajax({
type: "post",
dataType: "html",
url: '/Resources/GetList.ashx',
data: dataurl,
success: function (data) {
if (data != "") {
$("#pager").pager({ pagenumber: pagenumber, pagecount: data.split("$$")[1], buttonClickCallback: PageClick });
$("#anhtml").html(data.split("$$")[0]);
}
}
});
2.通过远程 HTTP GET 请求载入信息。
这是一个简单的 GET 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
实例:
$.get("test.cgi", { name: "John", time: "2pm" },
function(data){
alert("Data Loaded: " + data);
});
3. 通过远程 HTTP POST 请求载入信息。
这是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
实例:
$.post("/Resources/addfriend.ashx", { "fid": fids, "fname": fnames, "tuid": tuids, "tuname": tunames }, function (data) {
if (data == "ok") {
alert("添加成功!");
}
})
4.通过 HTTP GET 请求载入 JSON 数据。
实例:
$.getJSON(";tagmode=anyformat=jsonjsoncallback=?",
function(data){
$.each(data.items, function(i,item){
$("img/").attr("src", item.media.m).appendTo("#images");
if ( i == 3 ) return false;
});
});
希望对你有用。
ajax请求时如何解析json数据
服务器需要返回json格式的数据,然后在ajax的返回类型设置为json格式,就可以在返回的数据当中直接所以json数据了。