php ajax 提交返回的数据乱码问题,ajax获取数据json返回的汉字是Unicode编码,乱码怎么办...

ajax请求数据

php返回

echo json_encode(['status'=>-999,'msg'=>'对不起,您还没有登录,请先登录']);

js接收到的数据是

{"status":-999,"msg":"\u5bf9\u4e0d\u8d77\uff0c\u60a8\u8fd8\u6ca1\u6709\u767b\u5f55\uff0c\u8bf7\u5148\u767b\u5f55"}

怎么办?

可以用evel转换一下

eval("("+str+")");

转换后为

{status: -999, msg: "对不起,您还没有登录,请先登录"}

可以写一个函数,如果返回数据是json对象,则直接使用,如果返回不是,则用evel转换一下

/**

* json转换,

* 如果ajax返回的是{"status":-999,"msg":"\u5bf9\u4e0d\u8d77\uff0c\u60a8\u8fd8\u6ca1\u6709\u767b\u5f55\uff0c\u8bf7\u5148\u767b\u5f55"}

* 可以转换为{status: -999, msg: "对不起,您还没有登录,请先登录"}

*/

function toJson(str){

var json = {};

try{

if(typeof(str )=="object"){

json = str;

}else{

json = eval("("+str+")");

}

}catch(e){

alert("系统发生错误:"+e.getMessage);

json = {};

}

return json;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值