关于服务端返回JSON对象,却被解析为JSON字符串的问题,在线等!
前端使用一下代码提交并处理后续结果
function del(id){
if(confirm('确认要删除此关键字吗?')){
$.post('./keyword',{ op:'del',id:id },function(result){
alert(result); //正常这个部分应该显示的是object:object,但现在显示的是一个字符串
if( result.code != 0 ){
alert("删除失败!");
}else{
location.reload();
}
});
}
}
服务端使用以下代码返回
echo json_encode(array("code"=>0));
exit;
正常情况下在前端alert result这个变量,应该显示的是object:object,可现在显示的却是这个json字符串。
------解决方案--------------------觉得没错,你在客户端解析一下这个字符串。要返回json设置一下
contentType: "application/json"
------解决方案--------------------网络中传输的肯定是字符串啊, 序列化的目的就是将对象转成字符串,以便于网络传输, 所以任何返回结果只可能是字符串
------解决方案--------------------设置一下可以让返回值直接转换为js对象
感觉不必纠结啊 自己转下呗 jquery又有定义好的方法
------解决方案--------------------看看是不是 php其它地方有输出字符。。。