IE8下json.js 中文编码问题

原本需求是这样的:
有个AJAX的操作,需要传递表单数据,但是表单内容的name都是以answer[]命名,所以想把数据以为数组json化后传递 (用到了json2.js)

var answerStr = JSON.stringify(arr);

之前一直 跑得好好的,结果今天内务接到投诉电话,说试卷提交后答案全部乱码

如: “ u5c71u7f8a ”… 那边用google浏览器也是坏的,而我的google 又是好的,

后来到网上找了一下,原来出现错误是因为IE8内置有 JSON.parse()和JSON.stringify() 两个方法
而这和json2.js的方法重名

解决方法1:

 var answerStr = JSON.stringify(arr);   
 var o = JSON.parse( answerStr); 
 eval("var answerStr = '"+JSON.stringify(o)+"';");    //这是中文的ASCII码,利用eval转换

解决办法2:把Json2.js里的JSON改下名称,改成JSON2,这样调用:JSON2.stringify();

转载于:https://www.cnblogs.com/peijian708/archive/2011/04/04/2005099.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值