关于window.open()中文传值乱码问题的解决方法

时间:2016-03-31 16:51:30   收藏:0   阅读:1485

最近组长叫我做一个把查询出的数据用POI导出Excel的功能,我前台把要查询的字段通过如下传回后台时,发现出现了乱码问题

window.open(‘user!export?name=‘+name);

试了一下只有中文出现乱码,于是搜索了一下相关的文档,找到了解决乱码的办法。

浏览器自动把参数值用"ISO8859-1"的方式编码,于是前端需要解码两次

var val = encodeURI(name);    
val = encodeURI(val);
window.open(‘user!export?name=‘+val);

在后台的controller里面用URLDecoder类再解码一次

URLDecoder.decode(name.trim(), "utf-8")

这样取出来的值就不会出现乱码了。

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!