网络编程
位置:首页>> 网络编程>> JavaScript>> 关于xmlhttp乱码的解决方法

关于xmlhttp乱码的解决方法

作者:Mr.Cool 来源:asp之家 发布时间:2008-09-24 17:20:00 

标签:xmlhttp,乱码,escape,编码

感谢Mr.Cool 给asp之家投递精彩的文章!

站长你好,我经常光临你的站点,因为我也特别喜欢ASP写网页,你的站点上提供的代码比较适用哈,呵呵!

我最近也在研究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
%>

 

0
投稿

猜你喜欢

  • 被AJAX中DOM的操作郁闷了好几天,今天总算搞明白了,自学就是苦啊,苦的一把鼻涕一把泪的,把教训些出来,给后来者提个醒,老鸟就不要看了。下
  • 1 导言 Microsoft 在Microsoft SQL Server 2000中推出了与XML相关的功能以及Transact-SQL 关
  • PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序。在SQL中Oracle内建了一系列函数,这些函数都可被称
  • QQ登录Banner增加了剧情的概念之后,已经推出了春节和情人节两期。这之后设想能围绕Banner做的更加丰富,对传统文化的体现也能更为深入
  • Oracle物理结构故障是指构成数据库的各个物理文件损坏而导致的各种数据库故障。这些故障可能是由于硬件故障造成的,也可能是人为误操作而引起。
  • 要很好地领会Ajax技术的关键是了解超文本传输协议(HTTP),该协议用来传输网页、图像以及因特网上在浏览器与服务器间传输的其他类型文件。只
  • ASP实现即时显示当前页面浏览人数online.asp文件 <!--#include file="dbconn.a
  • 索引是加速表内容访问的主要手段,特别对涉及多个表的连接的查询更是如此。这是数据库优化中的一个重要内容,我们要了解为什么需要索引,索引如何工作
  • 赠送QQ秀流程是QQ秀商城关键流程之一,占了收入最直接的一部分。它的优化是后续商城流程优化的重要参考。OK,现在就用TA做例子,分享一下流程
  • 决定数据类型的第一步是定义所存数数据的分类: 数值型, 字符串型还是临时型等;除了一些特别的并不是那么直观的外, 这通常是很直观的。接下来是
  • QL Server事件探查器(Profiler)可以帮助数据库管理员跟踪SQL Server数据库所执行的特定事件,监视数据库的行为;并将这
  • 阅读上一篇:打造设计你自己的字体 ⅠMyFonts.com上销售的字体总数已经超过55,000个。现有字体的巨大数量表明了一个事实:我们在设
  • 来蓝色一直都在潜水,很少写帖子,太对不起大家了.下面和大家探讨一个话题,希望能引起大家的兴趣.关于H1,一直都想和大家讨论H1用法的问题,可
  • 这样的问题是因为 数据库字符集,表字符集,字段字符集都设为:gbk_chinese_ci 注意数据库连接串里面的 Stmt=Set Name
  • IE在处理透明度上真够恶心,而且在IE7必须让元素的hasLayout为ture,要不会失效。以下是我最新处理透明度的代码:var 
  • ASP给图片加水印是需要组件的...常用的有aspjpeg软件和中国人自己开发的wsImage软件,可以上网搜索下载这两个软件,推荐使用咱们
  • 如何显示数据库中的图片和超级链接?代码见下:<% set conn=server.creatobject(&quo
  • 今天看到某人博客推荐了http://dragoninteractive.com/这个网站,貌似一些效果做的比较不错,于是打开了看看,不过还真
  • 有时需要获取远程网站的某些信息,而服务器又限制了GET方式,只能通过POST数据提交,这个时候我们可以通过asp来实现模拟提交post数据,
  • 在 ASP(VBScript 为语言)中,Asc 函数的返回值小于 0 的,可以被判断为中文字符。Asc 函数返回与字符串的第一个字母对应的
手机版 网络编程 asp之家 www.aspxhome.com