当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js url传值中文乱码之解决之道

Javascript
javascript进行客户端数据的校验
javascript中如何实现浏览器上的右键菜单
用javascript使链接按钮不断变化
利用javascript制作倒计时牌
用javascript实现变色背景和文字
让弹出窗口变得“体贴”一些(javascript)
javascript实例教程(1) 创建弹出式窗口
javascript实例教程(2) 创建折叠式导航菜单
javascript实例教程(3) 探测浏览器插件
javascript实例教程(4) 探测浏览器插件
javascript实例教程(5) 在一个表单中设置和检查Cookies
javascript实例教程(6) 利用javascript进行密码保护
javascript实例教程(7) 利用javascript基于浏览器类型的重定向
javascript实例教程(8) 检验表单有效性
javascript实例教程(9) 随机显示图片
javascript实例教程(10) 创建后退按钮
javascript实例教程(11) 隐藏script代码
javascript实例教程(12) 鼠标移过时报警
javascript实例教程(13) 鼠标触发窗口
javascript实例教程(14) JS代替CGI

Javascript 中的 js url传值中文乱码之解决之道


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 579 ::
收藏到网摘: n/a

因为js url在传值的过程中使用的是js自己默认的字符集编码规则,我们必须把它转成属于我们自己的编码规格 在websphere 中使用的是url=encodeURI(encodeURI(url)); //用了2次encodeURI 测试成功,第一次转换没有尝试,
处理方法一。
js 程序代码:url=encodeURI(url);注意是整个URL
服务器端的代码:String linename = new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");
处理方法二。
js:var url="name="+name;
url=encodeURI(encodeURI(url)); //用了2次encodeURI
window.location = "<%=path%>/inner/line/line.jsp?"+url;
服务器端的代码:
String linename = request.getParameter(name);
//java : 字符解码
linename = java.net.URLDecoder.decode(linename , "UTF-8");