(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一下,而後就是從新啓動瀏覽器,

    以防萬一,能夠清除一下瀏覽器緩存

相關文章
相關標籤/搜索