从js向Action传中文参数出现乱码问题的解决方法


Posted in Javascript onDecember 29, 2013

做项目的时候,发现Action获取jsp表单中的中文参数,只要整个项目都采用UTF-8编码格式都不会出现乱码问题;但JSP中用到JS,并从JS向Action传中文参数,就会出现中文乱的现象。几经询问百度,上面说法很多。

经过实践发现下面的方法可以解决中文乱码问题:

JSP的JS中:中文参数用encodeURI(encodeURI(中文参数)),经过两次转码。例如:

function show(next,id,realName){ 
document.forms['f2'].action="usersearchNextPage?next="+next+"&id="+id+"&realName="+encodeURI(encodeURI(realName)); 
document.forms['f2'].submit(); 
}

其中 realName是中文参数。故在提交的URL中将realName转码两次。encodeURI(encodeURI(realName))

Action中:接收中文参数时解码。用:java.net.URLDecoder.decode(realName,"UTF-8");

如:

String realName = ServletActionContext.getRequest().getParameter("realName"); 
try { 
realName = java.net.URLDecoder.decode(realName,"UTF-8"); 
} catch (UnsupportedEncodingException e1) { 
e1.printStackTrace(); 
}

经过上述处理,问题解决。
Javascript 相关文章推荐
JS是否可以跨文件同时控制多个iframe页面的应用技巧
Dec 16 Javascript
Fixie.js 自动填充内容的插件
Jun 28 Javascript
页面只能打开一次Cooike如何实现
Dec 04 Javascript
用js实现table单元格高宽调整,兼容合并单元格(兼容IE6、7、8、FF)实例
Jun 25 Javascript
一个CSS+jQuery实现的放大缩小动画效果
Feb 19 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
Mar 21 Javascript
JS实现的仿淘宝交易倒计时效果
Nov 27 Javascript
JavaScript构造函数详解
Dec 27 Javascript
ES6之模版字符串的具体使用
May 17 Javascript
Vue的watch和computed方法的使用及区别介绍
Sep 06 Javascript
JS监听事件的叠加和移除功能
Nov 19 Javascript
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
May 28 Javascript
js data日期初始化的5种方法
Dec 29 #Javascript
javascript轻松实现当鼠标移开时已弹出子菜单自动消失
Dec 29 #Javascript
css3元素简单的闪烁效果实现(html5 jquery)
Dec 28 #Javascript
js动态调用css属性的小规律及实例说明
Dec 28 #Javascript
JQuery的$命名冲突详细解析
Dec 28 #Javascript
js中call与apply的用法小结
Dec 28 #Javascript
SinaEditor使用方法详解
Dec 28 #Javascript
You might like
php数组函数序列之array_search()- 按元素值返回键名
2011/11/04 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
php安装swoole扩展的方法
2015/03/19 PHP
php中删除、清空session的方式总结
2015/10/09 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
Yii中的relations数据关联查询及统计功能用法详解
2016/07/14 PHP
js的.innerHTML = ""IE9下显示有错误的解决方法
2013/09/16 Javascript
JavaScript判断手机号运营商是移动、联通、电信还是其他(代码简单)
2015/09/25 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
jQuery的文档处理程序详解
2016/05/10 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
微信小程序使用slider设置数据值及switch开关组件功能【附源码下载】
2017/12/09 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
vue自动化路由的实现代码
2019/09/30 Javascript
解决VUEX的mapState/...mapState等取值问题
2020/07/24 Javascript
JS实现炫酷雪花飘落效果
2020/08/19 Javascript
Vue时间轴 vue-light-timeline的用法说明
2020/10/29 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
Python进行数据科学工作的简单入门教程
2015/04/01 Python
详谈Python基础之内置函数和递归
2017/06/21 Python
你真的了解Python的random模块吗?
2017/12/12 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
2019/04/03 Python
如何通过Python实现标签云算法
2019/07/02 Python
python装饰器练习题及答案
2019/11/01 Python
PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法
2020/06/10 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
Jack Rogers官网:美国经典的女性鞋靴品牌
2019/09/04 全球购物
数字天堂软件测试面试题
2012/12/23 面试题
幼师自荐信
2013/10/26 职场文书
应届生求职信
2014/05/31 职场文书
2014年小学语文工作总结
2014/12/20 职场文书
退休教师欢送会致辞
2015/07/31 职场文书
公司员工宿舍管理制度
2015/08/07 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
人物搭配车车超萌联名预备中 【咒术迴战】 ⨯ 【天竺鼠车车】 展开合作
2022/04/11 日漫