js中encodeURIComponent转码后到后台直接输出 变成乱码

SoulAndDream 2012-04-06 10:38:56
前台用js的encodeURIComponent转码后,在前台输出一下 是%16进制码 但是到后台,也是直接输出,并没有再转码,但是却变成乱码,请问这是什么情况呢?
...全文
776 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
拽拽绅士 2013-03-11
  • 打赏
  • 举报
回复
引用 5 楼 lvhongfen 的回复:
在JS中需要转码2次,在后台在解码 conditions=encodeURI(conditions); conditions=encodeURI(conditions);//必须要转码2次
这个太对了,郁闷了我半天,终于解决了。
lvhongfen 2012-04-06
  • 打赏
  • 举报
回复

在JS中需要转码2次,在后台在解码
conditions=encodeURI(conditions);
conditions=encodeURI(conditions);//必须要转码2次
SoulAndDream 2012-04-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
后台要用URLDecoder.decode(s)转回中文
[/Quote]
您好,我并不是在后台要显示中文,我是在想既然我已经转成了非中文到后台,为什么到后台直接输出会成乱码,例如在前台调用encodeURIComponent转成%33到后台直接输出,就成?□等乱码了,请问这是什么原因导致的呢?
chenminxing 2012-04-06
  • 打赏
  • 举报
回复
后台要用URLDecoder.decode(s)转回中文
zhangliao613 2012-04-06
  • 打赏
  • 举报
回复
前台
var lastNameVal = document.getElementById("lastName").value;
lastNameVal = escape(encodeURIComponent(lastNameVal));

后台
String lastName =request.getParameter("lastNameVal").trim();
lastName=java.net.URLDecoder.decode(lastName,"UTF-8");

希望对楼主有帮助~~

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧