『壹』 jquery ajax一直提示错误parsererror,PHP返回的是正确的jsON,但是进不到success里面,大神求教啊
设置dataType为json,如果还不行的话,强制用parseJson解析
『贰』 JQuery .ajax 返回json格式,浏览器显示带有转义字符问题
这样的情况一般都是你的JSON不完整所致。在获取数据时这样处理一下就好了
$.post(url,data,function(youjson){
youjson=$.parseJSON(youjson);
//然后继续处专理你的代码属就好了
});
『叁』 jQuery怎么解析Json字符串
一、jQuery解析Json数据格式:
使用这种方法,必须在Ajax请求中设置参数:
1、dataType: "json"
获取通过回调函数返回的数据并解析得到我们想要的值,看源码:
jQuery.ajax({
url:full_url,
dataType:"json",
success:function(results){
alert(result.name);
}
});
jquery异步请求将type(一般为这个配置属性)设为“json”,或者利用$.getJSON()方法获得服务器返回,那么就不需要eval()方法了,因为这时候得到的结果已经是json对象了,只需直接调用该对象即可,这里以$.getJSON方法为 例:
vardata="
{
root:
[
{name:'1',value:'0'},
{name:'6101',value:'北京市'},
{name:'6102',value:'天津市'},
{name:'6103',value:'上海市'},
{name:'6104',value:'重庆市'},
{name:'6105',value:'渭南市'},
{name:'6106',value:'延安市'},
{name:'6107',value:'汉中市'},
{name:'6108',value:'榆林市'},
{name:'6109',value:'安康市'},
{name:'6110',value:'商洛市'}
]
}";
$.getJSON("http://sanic.cnblogs.com/",{param:"sanic"},function(data){
//此处返回的data已经是json对象
//以下其他操作同第一种情况
$.each(data.root,function(idx,item){
if(idx==0){
returntrue;//同countinue,返回false同break
}
alert("name:"+item.name+",value:"+item.value);
});
});
二、jQuery解析Json对象:
jQuery提供了另一种方法“parseJSON”,这需要一个标准的JSON字符串,并返回生成的JavaScript对象。语法:
data = $.parseJSON(string);
看看它是如何运用的到实际开发中的:
jQuery.ajax({
url:dataURL,success:function(results){
varparsedJson=jQuery.parseJSON(results);
alert(parsedJson.name);
}
});