使用json2.js的JSON.stringify()方法,结果中文变成了unicode.
查资料是IE8支持原生的JSON对象,自带了JSON.parse与JSON.stringify两个方法。当我使用json2里的Json.stringify方法里IE默认调用了IE8的stringify方法进行了uncode编码,致使传到服务器后中文变成了乱码。
解决办法1:把Json2.js里的JSON改下名称,改成JSON2,这样调用:JSON2.stringify();
解决办法2:
eval("var str = '"+JSON.stringify(obj)+"';");
document.write(str);
原理是利用JS再做了一层解析,把unicode又变成中文。

本文探讨了在IE8浏览器中使用JSON.stringify方法导致中文字符变为Unicode的问题,并提供了两种解决方案:一是修改Json2.js文件中JSON对象的名称;二是通过eval进行额外一层解析,将Unicode转回中文。
575

被折叠的 条评论
为什么被折叠?



