我的所有网页编码是utf-8,当打开欣赏器差池数据库插入数据时(main.asp),直接读取数据举办欣赏(showAll.asp),一切正常;可是当在main.asp通过ajax把数据插入到access表时,再去欣赏showAll.asp页面时,每每Response.Write('中文')语句中的内容都是乱码,纵然showAll.asp页面不包括从数据库来的数据,也是一样全部是乱码。当把欣赏后的网页源码用条记本编辑时,发明他的编码酿成了ANSI。
所以只需要在showAll.asp页面的前面加上
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Session.CodePage=65001%>
<%Session.CodePage=65001%>即可办理问题。
假如您的网页是基于UTF-8编码的,请在代码第一行插手:
<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>
假如您的网页是基于GB2312编码的,请在代码第一行插手:
<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%>
注:我就是通过此要领办理了ASP乱码的.这里各人要留意点2点
1.<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%> 这行代码必然要放到页面的第一行
这是重点:
2.<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>和<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>和<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
response.write 输出 utf-8的要领
为了适应xmlhttp控件的需要,这个控件只有在得到utf-8编码的网页内容的时候,responseText才气获得正确输出,试了各类要领,甚至在asp处事器上用adodb.steam来转码,厥后看到一篇文章,只要在asp中插手以下代码即可,一试,公然乐成!只是不清楚为什么。
Response.ContentType="text/html"
Response.AddHeader"Content-Type","text/html;charset=UTF-8"
Response.CodePage=65001
Response.CharSet="UTF-8"
Response.BinaryWrite(chrb(239))
Response.BinaryWrite(chrb(187))
Response.BinaryWrite(chrb(191))
接下来用 response.write 直接输出内容即可,客户端将获得以utf-8编码的内容
response.write 输出乱码的办理要领
在许多时候,我们城市不太留意一些细节的问题,
譬喻在asp的开拓进程中,最让人头痛的就是网页的解码问题
我此刻开拓的都是一些繁体中文的网站,并且公司划定要用utf-8这个国际解码,
于是解码问题就会整体缠着你不放了··
我们不要看小<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
这句代码,因为这句代码是很有用的,出格是在解码方面,好比许多人在利用response.write这个要领输出中文字符串的时候会呈现乱码,而且不管你奈何添加response.charset="utf-8" 、session.codepage=65001都无补于事,于是我们就需要<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
虽然response.charset="utf-8" 、session.codepage=65001这两句也不能少;
可是固然asp代码所需要的条件都齐全了,可是我们不要忘了网页自己需要的条件;
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
这个HTML网页所需要的解码设定的条件;虽然,这是asp代码和html代码殽杂的文件所需要的;
假如是纯asp代码的asp文件可以不要;
再一个就是文件自己还得必需是utf-8的解码;
假如这个各人不知道在那边看的话;各人可以用记事本打开的asp文件;另存为,假如编码是ANSI的话,将其改为utf-8即可,
这些条件都满意了之后,我想就应该不会呈现乱码了;