中文传值火狐、google浏览器无问题,但IE有乱码问题的解决
点击后打开新页面,用户登录!用户名为中文时,火狐、google浏览器无问题,但IE有乱码问题:
问题代码:
<a href="member!sysLogin.do?name='${member.uname }'" target="_blank" />登录</a> ?超链接形式的传参,都是Get方式!
public String sysLogin(){try{name=new String(name.getBytes("iso-8859-1"),"utf-8");int r = this.memberManager.loginbysys(name);if(r==1){return "syslogin";}this.msgs.add("登录失败");}catch(RuntimeException e){this.msgs.add(e.getMessage());} catch (UnsupportedEncodingException e) {this.msgs.add(e.getMessage());}return this.MESSAGE;}?修改成功:
<a href="javascript:toSysLogin('${member.uname }');" />登录</a>function toSysLogin(name){var uriname="member!sysLogin.do?name="+name;window.open( encodeURI(uriname));}?public String sysLogin(){try{this.setName(java.net.URLDecoder.decode(name, "UTF-8"));// 此处转码name=new String(name.getBytes("iso-8859-1"),"utf-8");int r = this.memberManager.loginbysys(name);if(r==1){return "syslogin";}this.msgs.add("登录失败");}catch(RuntimeException e){this.msgs.add(e.getMessage());} catch (UnsupportedEncodingException e) {this.msgs.add(e.getMessage());}return this.MESSAGE;}?问题解决!
encode编码
decode解码