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

 

posted @ 2014-12-01 00:39  hjzqyx  阅读(773)  评论(0编辑  收藏  举报