从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 相关文章推荐
event对象获取方法总结在google浏览器下测试
Nov 03 Javascript
兼容所有浏览器的js复制插件Zero使用介绍
Mar 19 Javascript
jQuery中ajax错误调试分析
Dec 01 Javascript
js实现做通讯录的索引滑动显示效果和滑动显示锚点效果
Feb 18 Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 Javascript
Vue Socket.io源码解读
Feb 07 Javascript
vue中动态绑定表单元素的属性方法
Feb 23 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
Aug 27 Javascript
React 使用recharts实现散点地图的示例代码
Dec 07 Javascript
Vue插件从封装到发布的完整步骤记录
Feb 28 Javascript
在Vue项目中,防止页面被缩放和放大示例
Oct 28 Javascript
JS实现动态星空背景效果
Nov 01 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常用ODBC函数集(详细)
2013/06/24 PHP
使用PHP编写的SVN类
2013/07/18 PHP
PHP四种基本排序算法示例
2015/04/09 PHP
在WordPress中使用PHP脚本来判断访客来自什么国家
2015/12/10 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
2018/05/12 PHP
php实现快速对二维数组某一列进行组装的方法小结
2019/12/04 PHP
Aster vs Newbee BO3 第二场2.18
2021/03/10 DOTA
Display SQL Server Version Information
2007/06/21 Javascript
通过 Dom 方法提高 innerHTML 性能
2008/03/26 Javascript
js变换显示图片的实例
2013/04/16 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
百度移动版的url编码解码示例
2014/04/29 Javascript
Javascript封装DOMContentLoaded事件实例
2014/06/12 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
Javascript基础_标记文字的实现方法
2016/06/14 Javascript
RequireJS 依赖关系的实例(推荐)
2017/01/21 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
2017/03/10 Javascript
vue与TypeScript集成配置最简教程(推荐)
2017/10/17 Javascript
javascript系统时间设置操作示例
2019/06/17 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
[52:36]VGJ.S vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python常用模块介绍
2014/11/21 Python
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
实例分析python3实现并发访问水平切分表
2018/09/29 Python
python单元测试框架pytest的使用示例
2020/10/07 Python
《蚕姑娘》教学反思
2014/04/15 职场文书
国际贸易专业求职信
2014/06/04 职场文书
投资入股合作协议书
2014/10/28 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
廉洁自律个人总结
2015/02/14 职场文书
开除通知书范本
2015/04/25 职场文书
2015年班主任德育工作总结
2015/05/21 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书
redis实现排行榜功能
2021/05/24 Redis
Python3 多线程(连接池)操作MySQL插入数据
2021/06/09 Python
SpringBoot整合JWT的入门指南
2021/06/29 Java/Android