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");解码;

posted @ 2013-06-09 12:47  奋斗的小菜鸟  阅读(214)  评论(0编辑  收藏  举报