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

1.尝试过的全部方法: javascript

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

        再改为ServletActionContext.getResponse().setCharacterEncoding("gbk"); java

        尝试结果:均失败! web

    (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>, tomcat

        尝试结果:失败! 服务器

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

        感受可能和跨域问题有关系,因而又改这句代码:

        $.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一下,而后就是从新启动浏览器,

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

相关文章
相关标签/搜索