日期:2014-05-16  浏览次数:20502 次

echo json_encode返回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字符串。

------解决方案--------------------
$.post('./keyword',{ op:'del',id:id },function(result){...}, '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();
}
},"json");
}
}