欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

中文乱码解决方式

程序员文章站 2022-04-03 08:56:40
...

碰到中文乱码的问题,在百度和谷歌中晃荡了很久,tomcat也配置了URIEncoding,也写了filter过滤器就是不行。
有两种方式:
第一种:通过js将编码进行转换。
代码如下:

var changeURL = function(url, datas) { 
      var str = ""; 
      for ( var i in datas) { 
         str += "&" + i + "=" + encodeURI(datas[i]); 
      } 
      if (str.length == 0) { 
         return url; 
      } 
      return url + "?" + str.substr(1); 
} 

 在代码中进行调用示例如下:

var datas={123:"124",name:"aaa"}; 
var url=changeURL("test.do",datas); 
alert(url); 

 第二种方式:通过伪form进行post数据提交,因为post提交的数据时不会出现乱码的。
代码如下:

function postCommit(divId,url,datas){ 
  var str="<form action='"+url+"' method='post'>"; 
   for(var i in datas){ 
     str+="<input type='hidden' name='"+i+"' value='"+datas[i]+"' />"; 
  } 
  str+="</form>"; 
  document.getElementById(divId).innerHTML=str; 
   document.getElementById(divId).getElementsByTagName("form")[0].submit(); 
} 

 

调用的例子如下:

var datas={loginName:"124",loginPassword:"aaa"}; 
postCommit("aaaa","bbbb.do",datas); 

 这个需要在页面中加入id为aaaa的div,代码如下:

<div id="aaaa"></div> 
相关标签: 中文乱码