函数事先将所有中文转换成英文编码并保存(也可以用 ASP

在数量发送一方,利用 javascript 的 escape
函数事情发生在此以前将装有中文转换来法语编码并保留(也足以用 ASP
等其余语言的函数实时转变输出)。 在数据选拔一方,利用 javascript 的
unescape 函数将享有藏语编码还原。 由于 Ajax

函数事先将所有中文转换成英文编码并保存(也可以用 ASP。无论是任何编码都能健康传送希腊语,所以用这种艺术能够轻便裁撤。

函数事先将所有中文转换成英文编码并保存(也可以用 ASP。用XMLHTTP Post
Form时的表单乱码有两地点的因由——Post表单数据时汉语乱码;服务器Response被XMLHTTP不得法编码引起的乱码。换句话说,本文主要解决四个难题——怎么着准确Post普通话内容&怎么样正确彰显获得的汉语内容。
Part I Post粤语内容 先看看E文的表单是怎么提交的: 复制代码 代码如下:

假定把strA = “submit1=Submit&text1=scsdfsd”;换来: strA =
“submit1=Submit&text1=中文”;
你会发觉提交上去的东东平素不对,ASP中Request.Form根本取不到值。笔者用Request.BinaryRead把多个HTML
Form中的Post内容写出来看了看,才开掘标题——Form提交时也要编码的,编码后的粤语是看似于%??%??的转义字符,举个例子“普通话”就被编码为:%D6%D0%CE%C4。呵呵,也怪笔者笨,人家CONTENT-TYPE里肯定写的明明白白——application/x-www-form-urlencoded,urlencoded嘛当然正是其同样子了。既然那样,那我们也知道该如何是好了——自个儿做转变,代码见下:
复制代码 代码如下:

(在此作者把后面包车型客车JavaScript的代码改成了VBScript,不是吃饱了撑的没事干,原因见后)
Part II.准确展现得到的普通话内容
OK,假诺您在Server端把Form的源委写到数据库/文件的话,你在那里看见的国语毫无难题,可是,若是你想看看Server的Response——难题来了:借使Response的结果不是XML,XMLHTTP.responseXML里当然是不会有东东的,这就用responseText好了,在代码的末段加一句:
alert 看看大家勤奋劳动的结果 😛 可是只是…..怎么具备的国语全产生了方格?
(笔者打不出去,风乐趣自身去试,也不用Post,Get三个富含汉语的网页就足以窥见了。)
原因相当粗略:XMLHTTP获得Response时假定Response是UTF8编码的,假使Response是XML,那还是可以透过encoding来指确定人员编制码,但HTML就那多少个了。所以它把含GB2312编码的HTML当成UTF8格式,不出错才有鬼!
可是万幸还应该有补救的主意:XMLHTTP的responseBody
属性里带有的只是未解码的Resonse——”a raw undecoded bytes as received
directly from the server”
:),独一的题目是,responseBody再次来到的是叁个unsigned
bytes数组,我们怎么去拜访它,怎么把它调换到BST奥迪Q5?
那正是为啥我在上头把代码改成VBScript的案由——VBScript Can do it,but
JavaScript Cannot! 代码见下: 复制代码
代码如下:

—————————————-以上为转发—————————–
Start Building Professional Ajax Web Applications
Today 前段时间用了
DHTMLX的tree,普通话的xml居然用持续,报错,整个系统是GB2312的,而DHTMLX只援救UTF8,Slovak语是健康的,汉语就离谱。
用法也很简短,是DHTMLX 演示里用的代码。 复制代码 代码如下: var
obj=document.getElementById; obj.style.display=”block”; obj.focus(State of Qatar;
ifreturn; tree=new dhtmlXTreeObject; tree.setImagePath;
tree.setOnClickHandler; tree.setXMLAutoLoading; //load first level of
tree tree.loadXML;
tree.asp编码为gb2312,和任何系统同样,用response.write重临三个xml
整个类别编码改不了,唯有在DHTMLX上想办法了。 查了些资料,最后消除了。
再深远一层开采是,Microsoft.XMLHTTP的缘故,就查到了地点的公文。
如是就大约了,校勘如下: 1. 扩大多个VBScript的华语调换的函数 复制代码 代码如下:

2.dhtmlxcommon.js的 getXMLTopNode处 var xmlString =
this.xmlDoc.responseText; 改为 var xmlString =
bin2str(this.xmlDoc.responseBody卡塔尔国;//能够在js里直接调用VBScript脚本
3.何况 在出口xml的asp 文件先河到场

自然文件也是保留为gb2312格式的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注