-
背景
- JSP页面UTF-8编码
- CharsetFilter采用UTF-8编码
- JS文件也是UTF-8编码(这个算么?……)
- tomcat为5.0以上版本
-
方式
- 非AJAX方式(比如<a href>、form的get方式)-----通过在tomcat的server.xml中的<connector>节点配置URIEncoding="UTF-8"可以解决url传中文乱码的问题
-
ajax方式------需要在url请求之前进行url=encodeURI(url)的操作,而我们系统中用到两种ajax,如下解释:
- summer提供的ajax框架,已经在提交之前进行了encodeURI和encodeURIComponent编码(具体可参考xmlhttp.js之_makeParams方法,summer/component/common/util.js之export2uri方法)
- ajaxAnywhere进行ajax请求,我准备修改aa.js,再提交之前统一做encodeURI。
在经过以上修改之后,大家可放心在url中传中文
本文介绍了解决JSP页面及Ajax请求中URL中文字符乱码的方法。对于非Ajax请求,可通过配置Tomcat的URIEncoding参数解决;对于Ajax请求,则需使用encodeURI进行编码。文章还详细介绍了不同框架下实现的具体步骤。
103

被折叠的 条评论
为什么被折叠?



