ajax返回数据过程详解
Posted php自学交流中心
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax返回数据过程详解相关的知识,希望对你有一定的参考价值。
ajax返回数据过程详解
当在开发项目中,我们用到的ajax比较多的,把数据传到php文件,php把相应的数据返回到前端页面。
json_encode();//将数组转换成json数组,这要求ajax的请求中设置返回数据格式为json,具体设置方法为:dataType:'json',php文件:echo就是php返回的值,传递给ajax的success:function(data){}中的参数data,data[0]就是$listTop_info[0]就是第一次循环取得的第一行的数据:返回来的数据例如:
var json = '[
{"id":"1","tagName":"apple"},
{"id":"2","tagName":"orange"},
{"id":"3","tagName":"banana"},
{"id":"4","tagName":"watermelon"},
{"id":"5","tagName":"pineapple"}
]';
一般返回是字符串的比较的好办,就是直接echo你要的结果的就行,前端页面就是返回值做判断,或者赋值给前端页面上,若是数组,我们就把数据转化成json格式的返回去,我们在
success:function(data){
//就收的数据
var dataObj=JSON.parse(json);
//一般拿数据是数组的,我们需要遍历数据的 有两个方法:each 或者 for
$.each(JSON.parse(json), function(i, obj) {
alert(obj.tagName);
});
//or
$.each($.parseJSON(json), function(i, obj) {
alert(obj.tagName);
});
}
……
json数组有长度json.arrayname.length,如果单纯是json格式,那么不能直接使用json.length方式获取长度,而应该使用其他方法。(注:arrayname为数组名)
var json1={
"abc":[
{"name":"txt1"},
{"name","txt2"}
]
};
以上遍历的方法是:
for(var i=0;i<json1.abc.length;i++){
alert(json1.abc[i].name);
}
这里的json1.abc是一个数组,数组是由2个子json组成的,数组是有length属性的,而普通的json是没有该属性的。
以上是关于ajax返回数据过程详解的主要内容,如果未能解决你的问题,请参考以下文章
jQuery Ajax Post,将它们添加到数据库,返回数据并再次重复该过程
ajax json 请求时,如果返回的不是字符串,不是json 请问怎么处理?