使用escape和unescape函数配合使用
后台语言asp
<%
response.write(escape("中文测试"))
%>
页面js脚本(只写关键部分)
假设返回的resopnseText为value则
alert(unescape(value));
即可在页面获得正确的中文字符。
反过来,在页面js脚本里面
escape("args=中文字符")
在后台使用
unescape(request.("args"))
可以获取args的值
xmlHttpRequest创建调用函数如下:
/********************创建ajax异步调用函数*********************/
/*
使用这种方式创建的对象,必须先 new 出一个对象,然后调用对象实例的方法
var aj = new $ajax();
aj.sendPOST(...);
*/
window.$ajax = function(){
var version = "1.0";
return {
//被页面调用的POST方式函数
sendPOST : function(url, data, callback) {
return this.send(url, "POST", callback, data);
},
//被页面调用的GET方式函数
sendGET : function(url, callback, args) {
return this.send(url, "GET", callback, args);
},
send : function(url, method, callback, data) {
var xmlHttp;
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(ex){
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
}
//将onreadystatechange属性直接赋值给回调方法
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status < 400) {//获取页面并成功返回数据
(method=="POST") ? callback(xmlHttp) : callback(xmlHttp,data);
} else {
//什么也不做
}
}
}
//根据不同的请求方式
if (method=="POST") {
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttp.send(data);
} else {
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
}
try
{
return xmlHttp;
}catch(e)
{ }
}
}
};
本文介绍如何利用ASP后台与JS前台之间的escape和unescape函数进行字符串编码转换,确保中文字符正确传递。提供了创建AJAX异步调用函数的方法,并展示了如何在ASP和JS中使用这些函数来处理包含中文的数据。
&spm=1001.2101.3001.5002&articleId=3987223&d=1&t=3&u=231070f260274fc88f3bb4b4832ad1f2)

被折叠的 条评论
为什么被折叠?



