RUL传值乱码问题
通过URL传值,在J2EE中很常见, 而且在传递中文的过程,会出现乱码问题;以下提供几种很长用方法:
一:js中encodeRUI()
js code:
<script type="text/javascript"> function action(obj){ window.location = "encode.jsp?action="+encodeURI(encodeURI(obj)); }
注:encodeURI(encodeURI(obj)) 是通过两次转化,(这个我也不理解为什么.如果有谁知道, 请告诉我,提前谢过...)
HTML code:
<a href="javascript:action('我们都是好孩子');"><span>encode</span></a>
跳转之后的HTML code:
<span>${ param.action }</span>
结果:
%E6%88%91%E4%BB%AC%E9%83%BD%E6%98%AF%E5%A5%BD%E5%AD%A9%E5%AD%90
这样就对了, 因为<span>${ param.action }</span>并没有转化回来;
这里用decodeURI()方法转化回来;
二:new String(str.getByte("ISO-8990-1"),"UTF-8");
java后台可以用 java.net.URLDecoder.decode(request.getParameter("prodNamekey"),"utf-8");解码;
我就是一个菜鸟!