$.get("/ajax-terms.asp", function(d){
$("#wrap-terms").html(d);
})
当使用“Response.Write”将条款数据直接包含在文档中时,所有内容都会正确显示,包括以下字符:‘
和’
当我通过AJAX请求相同的数据时,服务器返回奇怪的符号(或者可能是服务器发送正确的内容,但浏览器会错误地呈现它们)。这是一个奇怪的符号:�
任何解决方法?
编辑:以下是容器页面的标题:
GET /register.html
Host: ********.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: ********
Date: Sat, 06 Nov 2010 06:08:45 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Length: 38317
Content-Type: text/html
Cache-Control: private
容器页面包含以下行:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
这是容器页面触发的jQuery / Ajax请求:
$.get("/ajax-terms.asp", function(d){
$("body").append(d);
})
这就是我得到的:
GET /ajax-terms.asp
Host: ********.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
X-Requested-With: XMLHttpRequest
Referer: http://********.com/register.html
Cookie: ********
Date: Sat, 06 Nov 2010 06:12:53 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Length: 23436
Content-Type: text/html
Cache-Control: private
响应似乎正确包含‘
和’
,但不确定为何将其呈现为�
。
答案 0 :(得分:1)
听起来您的服务器发送的AJAX编码与浏览器设置的编码方式不同。检查传入的AJAX的标题。