ASP同一站点下gb2312和utf-8页面传递参数乱码的终极解决方法
2018-09-06 10:42
①.页面文件使用正确的编码,gb2312使用ANSI,utf-8使用utf-8;
②.ASP代码中设置正确的CODEPAGE,gb2312使用936,utf-8使用65001;
③.HTML代码中设置正确的charset,gb2312使用gb2312,utf-8使用utf-8;
④.将传递的参数值使用js的escape函数进行编码;
示例代码
t1.asp(ANSI编码):
复制代码 代码如下:
<%@LANGUAGE=VBSCRIPT CODEPAGE=936%>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
<html xmlns=
<head>
<meta http-equiv=Content-Type content=text/html; charset=gb2312 />
</head>
<body>
<script type=text/javascript>
document.write(<a href=t2.asp?keyword= + escape(木子屋) + >木子屋</a>);
</script>
<br/>
<%
Response.Write(Request.QueryString(keyword))
%>
</body>
</html>
t2.asp(utf-8编码):
复制代码 代码如下:
<%@LANGUAGE=VBSCRIPT CODEPAGE=65001%>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN
<html xmlns=
<head>
<meta http-equiv=Content-Type content=text/html; charset=utf-8 />
</head>
<body>
<script type=text/javascript>
document.write(<a href=t1.asp?keyword= + escape(木子屋) + >木子屋</a>);
</script>
<br/>
<%
Response.Write(Request.QueryString(keyword))
%>
</body>
</html>
上一篇:ASP中使用SQL语句操作数据库
下一篇:用ASP让用户访问指定页面
文章标题:ASP同一站点下gb2312和utf-8页面传递参数乱码的终极解决方法
文章链接:http://soscw.com/index.php/essay/8711.html