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

Javascript
javascript radio list的实现细节(多浏览器兼容)
IE在DOM操作有表单控件时的bug
trim原型函数看js正则表达式的性能
js 禁用浏览器的后退功能的简单方法
IE和Firefox下javascript的兼容写法小结
兼容ie和firefox js关闭代码
用tip解决Ext列宽度不够的问题
firefox getyear() getFullYear数获取年份的问题
javascript iFrame研究
FLASH 广告之外的链接
firefox TBODY 用js显示和隐藏时出现错位的解决方法
Javascript 获取LI里的内容
比较全的JS checkbox全选、取消全选、删除功能代码
JS checkbox控制操作代码
document.all与getElementById、getElementsByName、getElementsByTagName用法区别-document.all
document.all与getElementById、getElementsByName、getElementsByTagName用法区别-getElementById
简单通用的JS滑动门代码
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
js 提交和设置表单的值
flash javascript之间的通讯方法小结

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 880 ::
收藏到网摘: 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");