Ajax應用裏面亂碼問題主要有2個原因
1、xtmlhttp 返回的數據默認的字符編碼是utf-8,如果前臺頁面是gb2312或者其它編碼數據就會產生亂碼
2、post方法提交數據默認的字符編碼是utf-8,如果後臺是gb2312或其他編碼數據就會產生亂碼
第一個原因的解決辦法:
服務器端代碼添加
Response.ContentType = "text/html"
或
Response.ContentType =
"text/xml"
Response.CodePage=65001
Response.CharSet =
"UTF-8"
或
Response.CodePage=936
Response.CharSet = "GB2312"
第二個原因解決辦法:
發送端(前臺javascript)用
encodeURIComponent(escape(內容))
對內容進行編碼後再發送
服務器端用
Unescape(request.form("內容"))或Unescape(request.querystring("內容"))
對內容進行解碼後接收