JS URL传值给servlet乱码

= =!

对于IE,深表无奈啊。

高手请华丽丽的飘过~ 

习惯了用chrome了就先在Chrome上测试,OK,成功了。

接着换到Firefox,OK,继续成功。

然后换到IE....果断悲剧了...各种无奈..

 

1 //在servlet、JSP页面中都有添加如下代码
2 response.setCharacterEncoding("UTF-8");
3 request.setCharacterEncoding("UTF-8");
4
5 //在jsp添加如下代码
6 pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"

添加了上面的代码,也还是依旧不行,只有IE是乱码,竟然还是IE8啊。。

太坑爹了。

经过和百度的一番战斗,终于找到了一个解决方案,如下:

1 //javascript里面加密两次,两次才可以的。
2 var url = "servlet/getText?name=" + encodeURI(encodeURI(name));

 

1 //在java里面,通过指定的编码解密即可。
2 String name = URLDecoder.decode(request.getParameter("name"),"utf-8");

通过以上的两步,就完美的解决了IE乱码的问题了。

刚刚解决完,先记下来,以备以后查看。高手请再次华丽丽的飞走……

 

 

 

你可能感兴趣的:(JS URL传值给servlet乱码)