加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

(1)乱码之一:$.getJSON方法解析js文件中的json格式数据,中文

发布时间:2020-12-16 19:20:33 所属栏目:百科 来源:网络整理
导读:1.尝试过的所有方法: (1)在后台代码相应的地方加上ServletActionContext.getResponse().setCharacterEncoding("utf-8"); 再改成ServletActionContext.getResponse().setCharacterEncoding("gbk"); 尝试结果:均失败! (2)查看html里面的代码:meta http-equ

1.尝试过的所有方法:

(1)在后台代码相应的地方加上ServletActionContext.getResponse().setCharacterEncoding("utf-8");

再改成ServletActionContext.getResponse().setCharacterEncoding("gbk");

尝试结果:均失败!

(2)查看html里面的代码:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

这个没问题

再查看页面引用的js代码<script src="js/class/class.js"></script>,

将其改成 <script src="js/class/class.js" charset="utf-8"></script>,

尝试结果:失败!

(3)查看class.js里面代码:$.getJSON("js/class/datasrc_class.js",function(data) {

感觉可能和跨域问题有关系,于是又改这句代码:

$.getJSON("http://localhost:808/zhaoyang/js/class/datasrc_class.js",function(data) {

尝试结果:失败!

(4)google + 百度,查到一个结果:设置tomcat配置文件,server.xml里面:

<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

里面确实已经设置了Encoding,于是改成gbk

尝试结果:失败!

(5)想起以前做过类似使用js里面数据出现乱码的情况,好像是在web.xml中增加了一个配置信息,

貌似就是处理js文件的,于是,找到这块代码:

<mime-mapping>
<extension>js</extension>
<mime-type>text/javascript</mime-type>
</mime-mapping>

将其改成:

<mime-mapping>
<extension>js</extension>
<mime-type>text/javascript;charset=gbk</mime-type>
</mime-mapping>

本认为重新跑服务器,估计差不多了

尝试结果:还是失败!

上述所有结果是:firefox乱码、IE连乱码都不显示!

2.成功方法

其实上述第五种方法可以成功的,只是我少做了一步:右击server,clean一下,然后就是重新启动浏览器,

以防万一,可以清除一下浏览器缓存

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读