中文传值火狐、google浏览器无问题,但IE有乱码问题的解决
2017-12-29 16:00
295 查看
转载来源:http://uule.iteye.com/blog/882535
点击后打开新页面,用户登录!用户名为中文时,火狐、google浏览器无问题,但IE有乱码问题:
问题代码:
Java代码
<a href="member!sysLogin.do?name='${member.uname }'" target="_blank" />登录</a>
超链接形式的传参,都是Get方式!
Java代码
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;
}
修改成功:
Java代码
<a href="javascript:toSysLogin('${member.uname }');" />登录</a>
function toSysLogin(name){
var uriname="member!sysLogin.do?name="+name;
window.open( encodeURI(uriname));
}
Java代码
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解码
点击后打开新页面,用户登录!用户名为中文时,火狐、google浏览器无问题,但IE有乱码问题:
问题代码:
Java代码
<a href="member!sysLogin.do?name='${member.uname }'" target="_blank" />登录</a>
超链接形式的传参,都是Get方式!
Java代码
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;
}
修改成功:
Java代码
<a href="javascript:toSysLogin('${member.uname }');" />登录</a>
function toSysLogin(name){
var uriname="member!sysLogin.do?name="+name;
window.open( encodeURI(uriname));
}
Java代码
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解码
相关文章推荐
- 中文传值火狐、google浏览器无问题,但IE有乱码问题的解决
- 中文传值火狐、google浏览器无问题,但IE有乱码问题的解决
- 解决jsp超链接中文传值乱码问题
- C# asp.net页面通过URL参数传值中文乱码问题解决办法
- java下载文件中文文件名乱码问题(ie,谷歌,火狐)
- 关于在struts中传值后出现中文乱码的解决问题
- java 页面url传值中文乱码问题解决
- asp.net页面通过URL参数传值中文乱码问题解决办法
- asp.net 中文传值乱码问题的解决
- 解决PHP在IE浏览旗下载文件,中文文件名乱码问题
- 解决springmvc返回json数据IE出现文件下载和json数据中文乱码问题
- HTML5在IE10、火狐下中文乱码问题的解决方法
- java 中文乱码的解决办法!兼容谷歌,IE,FIREFOX(火狐)
- IE、FireFox、Chrome浏览器中关于URL传参中文乱码,解决兼容性问题!
- C# asp.net页面通过URL参数传值中文乱码问题解决办法
- 解决hibernate向mysql数据库传值中文乱码问题
- 利用jquery实现Ajax技术,post方式传值中文乱码问题的解决办法。
- 解决java中中文传值出现乱码问题
- java开发踩坑(2)-解决springmvc传值中文乱码问题
- 解决在IE下使用PHPExcel导出时的文件名中文乱码问题