Javascript Firefox 14.0.1在读取通过AJAX发送的JSON文件时返回错误

Javascript Firefox 14.0.1在读取通过AJAX发送的JSON文件时返回错误,javascript,ajax,json,firefox,Javascript,Ajax,Json,Firefox,Firefox 13.0.1和IE7+可以很好地处理服务器上的JSON文件。然而,当我在浏览器中打开JSON(在线存储)文件时,FF14返回控制台产生的错误消息: 未声明纯文本文档的字符编码。 文档将在某些浏览器中呈现为乱码文本 如果文档包含来自外部的字符,则进行配置 US-ASCII范围。需要更改文件的字符编码 在传输协议或文件中声明需要使用字节顺序 标记为编码签名 当你访问这个网站(我的测试网站)时, (您可以在此处查看代码) 并在div内滚动鼠标(被黑色边框包围), 这些文本并不是预期的

Firefox 13.0.1和IE7+可以很好地处理服务器上的JSON文件。然而,当我在浏览器中打开JSON(在线存储)文件时,FF14返回控制台产生的错误消息:

未声明纯文本文档的字符编码。 文档将在某些浏览器中呈现为乱码文本 如果文档包含来自外部的字符,则进行配置 US-ASCII范围。需要更改文件的字符编码 在传输协议或文件中声明需要使用字节顺序 标记为编码签名

当你访问这个网站(我的测试网站)时, (您可以在此处查看代码) 并在div内滚动鼠标(被黑色边框包围), 这些文本并不是预期的(除FF14外,在上面列出的任何浏览器中都是如此)


我想问一下如何按照FF14 web控制台的请求声明纯文本的字符编码。

可以使用HTTP头设置内容类型和字符编码。您可能需要的标题是:

Content-type: application/json; charset=UTF-8
如果要从php提供json数据,可以使用
header()
命令添加此头。 如果您使用的是apache,则可以使用带有以下行的
.htaccess
文件:

AddType application/json .json
AddCharset UTF-8 .json

当我在php脚本中包含一个php脚本时,出现了这个错误。当我在脚本中添加include标记时,错误停止发生。

感谢您的回复。实际上,我通过在onreadystatechange函数之前移动xmlhttp.open()和xmlhttp.send()来解决这个问题。然而,当您浏览到FF14中的json文件时,仍然会在控制台中收到相同的错误消息。不过,这并不影响将json数据传输到HTML页面。谢谢fuzic,这对我很有帮助。