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进制的编码,同时添加上%号.

目录
相关文章
|
9月前
|
JSON 移动开发 前端开发
浏览器:跨域及解决方法
浏览器:跨域及解决方法
308 0
|
Web App开发 消息中间件 监控
浏览器原理 16 # WebAPI:XMLHttpRequest是怎么实现的?
浏览器原理 16 # WebAPI:XMLHttpRequest是怎么实现的?
101 0
浏览器原理 16 # WebAPI:XMLHttpRequest是怎么实现的?
|
Web App开发 前端开发 JavaScript
Chrome浏览器HTML支持本地(file协议)的AJAX请求
Chrome浏览器HTML支持本地(file协议)的AJAX请求
618 0
Chrome浏览器HTML支持本地(file协议)的AJAX请求
|
Web App开发 前端开发 容器
chrome 等浏览器不支持本地ajax请求的问题
chrome 等浏览器不支持本地ajax请求的问题   XMLHttpRequest cannot load file:///D:/WWW/angularlx/ui-router-test/template/content.
1489 0
|
JSON 数据格式 前端开发
ajax请求正常,返回json格式,后台没问题,浏览器500
1.使用的是springmvc中的 @ResponseBody 注解   ,后台不报错,。正常走完;以为使用这个注解就可以正常返回json格式的数据;所以一直没有怀疑是注解的问题;   以为是ajax本身的问题  ;后来将返回数据改为纯数字又没有问题了。
1427 0
|
Web App开发 JavaScript 前端开发