Ajax在IE浏览器会出现中文乱码解决办法

在AJAX浏览器来进行发送数据时,一般它所默认的都是UTF-8的编码. Ajax在IE浏览器会出现中文乱码的情况!解决办法如下
 <script type="text/javascript">   
            function showDiv(str){ 
                  document.getElementById("picDiv").style.display="";
                  var xmlhttp;   
                  if (str==""){
                        document.getElementById("picDiv").innerHTML="";
                        return;
                  }
                  if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
                         xmlhttp=new XMLHttpRequest();
                  }
                  else{// code for IE6, IE5
                        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                  }
                  xmlhttp.onreadystatechange=function(){
                    if (xmlhttp.readyState==4 && xmlhttp.status==200){
                        document.getElementById("picDiv").innerHTML=xmlhttp.responseText;
                    }
                  }
                var url = "SBpicture.jsp?picName="+str;
                url=encodeURI(url);//这里是重点
                xmlhttp.open("GET", url, true);
                xmlhttp.send();
            }
        </script> 

说明:1 .encodeURL函数主要是来对URI来做转码,它默认是采用的UTF-8的编码.
     2. UTF-8编码的格式:一个汉字来三个字节构成,每一个字节会转换成16进制的编码,同时添加上%号.









本文转自 小眼儿 博客园博客,原文链接:http://www.cnblogs.com/hujunzheng/p/4134072.html,如需转载请自行联系原作者
上一篇:推荐几款jquery图片切换插件


下一篇:设置IE浏览器指定的功能