浏览 1511 次
锁定老帖子 主题:JS和JSP以及JAVA乱码解决备忘
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-03-31
>>>>1<<<<<
tomcat配置解决乱码:tomcat作为服务器的时候,设置tomcat让其将请求全部转换成指定的编码..能解决部分乱码.配置如下
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"
/>
>>>>2<<<<< 客户端和服务器在传递数据时可以用过滤器filter解决字符编码问题,但filter只能解决post方式提交的数据。 所以好多时候我们都要设置下,比如ajax的js请求.设置成post方式.以免麻烦.filter代码配置如下: <!-- 定义编码过滤器 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> >>>>3<<<<< 大多数的乱码问题有以上两种方案基本解决,那么还不行.就是麻烦的js的编码和..URL以及URL的参数的中文了. JS中编码有escape(),encodeURI(),encodeURIComponent()三个,escape()在提交页面和 处理页面的编码格式相同的情况下(比如它们都是GB2312),encodeURI()和encodeURIComponent()的用法基本相同,区别 在于encodeURIComponent()也对"?"等特殊字符进行编码。 这里需要注意的是encodeURI()要进行两次编码.因为编码转义成%号.需要对%好再次进行转义.可能要点绕.但进行两次肯定正确:如encodeURI(encodeURI("乱码"));
乱码解决方案:我想到的就这几点了.大家还有可以一起讨论.
借鉴:http://tao160911.iteye.com/blog/869117
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |