解决xmlhttp乱码的方法

简介: 我最近也在研究xmlhttp乱码 的解决办法,我测试了一下,下面是测试代码,如果能把escape转换后的编码再转换成中文,输出的时候反操作就解决问题了。 function AddDataPost(sUserId,sUserName) {    var oBao = new ActiveXObject("Microsoft.

我最近也在研究xmlhttp乱码 的解决办法,我测试了一下,下面是测试代码,如果能把escape转换后的编码再转换成中文,输出的时候反操作就解决问题了。

<SCRIPT language=JavaScript>
function AddDataPost(sUserId,sUserName)
{
   var oBao = new ActiveXObject("Microsoft.XMLHTTP");
sUserId = escape(sUserId);
   sUserName = escape(sUserName);
   var userInfo = "id="+sUserId+"&name="+sUserName;
   oBao.open("POST"," http ://www.ixinu.com/0/Server.asp",false);
   oBao.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=gb2312")
   oBao.send(userInfo);
   delete(oBao);
   document.getElementById("data").innerHTML = unescape(oBao.responseText);
}
</SCRIPT>

<INPUT onclick=AddDataPost(document.all.id.value,document.all.name.value) type=button value=submit>

userid:<INPUT name=id>

username:<INPUT name=name>
<SPAN id=data></SPAN>
<SCRIPT>document.write(""+escape("我")+"");</SCRIPT>
<SCRIPT>document.write(""+unescape("%u6211")+"");</SCRIPT>

刚才的那个结果测试已经通过了,还有一个更简单的方法,原来:escape和unescape在JS和ASP里面可以通用,所以直接在输出反编码就得到了中文的输出,而不需要经常其它编码操作了,呵呵!

客户端代码:

<SCRIPT language=JavaScript>
function AddDataPost(sUserId,sUserName)
{
   var oBao = new ActiveXObject("Microsoft.XMLHTTP");
   sUserId = escape(sUserId);
   sUserName = escape(sUserName);
   var userInfo = "id="+sUserId+"&name="+sUserName;
   oBao.open("POST","Server.asp",false);
   oBao.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=gb2312")
   oBao.send(userInfo);
   delete(oBao);
   document.getElementById("data").innerHTML = unescape(oBao.responseText);
}
</SCRIPT>

<INPUT onclick=AddDataPost(document.all.id.value,document.all.name.value) type=button value=submit> userid:<INPUT name=id>
username:<INPUT name=name>
<SPAN id=data></SPAN>
<SCRIPT>document.write(""+escape("我")+"");</SCRIPT>
<SCRIPT>document.write(""+unescape("%u6211")+"");</SCRIPT>


服务器端代码:Server.asp <% Response.Write "<br />"&escape(Request.Form("name"))&vbcrlf  %>

目录
相关文章
浏览器报错:Uncaught TypeError: Cannot read property ‘trim‘ of undefined
浏览器报错:Uncaught TypeError: Cannot read property ‘trim‘ of undefined
334 0
|
JSON 数据格式
工具方法json数据的Unicode乱码
今天在爬取一个网站返回的一段json数据但是一看吓一跳 查询得知这是为了更好的传输中文,json进行了Unicode编码。 下面是工具方法:    1 public static String decodeUnicode(String theString) { 2 ...
1038 0
|
开发框架 前端开发 JavaScript
|
应用服务中间件
response乱码和request乱码
response乱码  一、浏览器乱码   原因是:浏览器显示编码和文件的数据编码不一致         浏览器显示编码  response.setCharacterEncoding("utf-8"); 文件的数据编码  response.
925 0
|
Java 应用服务中间件 Spring
Get,Post请求中文乱码问题有效解决方法
对于做Java WEB项目同学来说,中文乱码问题是一个经常遇到而又非常头痛的问题,而最容易出现乱码的环节就是在浏览器向服务器发送请求的过程,至于出现乱码的原因不是本文的关注的重点,想了解的朋友可以参考 http://zhaomin819111.blog.163.com/blog/static/10659004200943112950956/ 本文主要介绍如何有效解决web请求中的乱码问题,其实解决方法有很多种,不同的请求类型解决方法也不相同。
1434 0
|
XML JSON 前端开发
jquery 的 ajax的dataType,服务器返回了数据,但是succes:function(data)不执行
当ajax中设置的dataType的类型和 服务器返回的数据类型不一致时,succes:function(data)会不执行 如服务器ServletActionContext.getResponse().getWriter().print("error"); 前台 $.ajax({type:"POST",dataType:"json",//指定返回的数据类型,自动解析
1701 0