Extjs中文乱码
Extjs中文乱码一、出现乱码的原因
在一次页面浏览过程中,客户端对一个URL发起浏览请求,服务端针对这次请求进行解析,而在字符编码解析方面,首先他检查该页面中的字符编码设置,即,这样,在页面中显示声明了字符编码为UTF-8,服务器就会将该页面用UTF-8的编码输出,而如果页面中没有显示声明,在服务器中都有一个默认的字符编码,如果默认的是GB2312,页面输出又是UTF-8,这样就会出现乱码。
而在Ext中的提交数据的过程中,Ext框架用的是都是UTF-8编码,而且通过JSON提交的数据也是UTF-8编码,所以要求所有的文件都是UTF-8编码。
二、解决乱码的方法如下
(1)前后台所有文件统一用UTF-8编码,数据库中最后也用UTF-8编码;
(2)在文件中显示声明字符编码,,如果是动态语言的文件,特别是针对autoLoad载入的文件,如果是HTML文件,又没有显示声明,这个就需要转为动态语言文件了,在其中改变Response Headers中Content-Type的设置
(3)对于提交中出现的乱码,在Ext中可以修改Request Header中Content-Type的设置,具体的方法为:Ext.lib.Ajax.defaultPostHeader += ";charset=utf-8";
(4)将EXT中ext-lang-zh_CN。js文件拷贝出来,使用edit plus另存为修改编码为UTF-8或者是你想要的格式就可以