Ext应用数据大部分都是json,在使用过程中,中文有时候会乱码。
1、前后台所有文件统一用utf-8编码方式。(文件用记事本打开,另存为,选择编码utf-8)
2、Ext.lib.Ajax.defaultPostHeader += '; charset=utf-8'加在Ext.onReady块里,此方法可以解决用EXT在POST时的中文乱码问题。
3、在Response Headers中设置Content-Type:text/json;charset=utf-8,在JAVA中实现方法:response.setContentType("text/json; charset=utf-8"),此方法可以解决用EXT在显示后台中文时的乱码问题
如果不行。试试response.setContentType("application/json; charset=utf-8")
这里设置是不能放过滤器时的。原因了解一下过滤器的运行顺序就知道。
另外,所有的javascript文件导入时也要设置charset
<script type="text/javascript" src="main.js" charset="UTF-8"></script>
当在java文件内写response.seContentType是一定要写在out的前面。
我的问题的解决方法是把response.setContentType("text/json; charset=utf-8")改了response.setContentType("application/json; charset=utf-8")