我在一个网站上工作,该网站全部使用旧的 ASP 3.0 以 iso-8859-1 编码完成。我使用 Yahoo YQL 从外部网站请求数据 (XML),但我请求将其作为 JSON-P(具有回调函数的 JSON,以便我可以检索数据)返回。
我面临的问题是 YQL 似乎总是返回以 utf-8 编码的数据,这在我尝试显示从该查询中检索到的任何文本数据时对我不利。由于编码不匹配,像 é、à、ô 这样的字符在 IE6 和 IE7 中会出现乱码。
有谁知道如何将使用 YQL 通过 JSON-P 检索到的 utf-8 数据转换为 iso-8859-1 并正确显示?
我已经试过了 that solution , 但它不起作用。服务器端功能也不是一个选项,ASP 3.0 不包括 utf8_decode 等功能。
谢谢
最佳答案
我不知道这是否可行,但如果您愿意,可以尝试以下方法。
A <script>
标签可以有一个 charset
引用远程 JS 文件时指定的属性。见理论here .这绝对适用于存储在 JavaScript 文件中 的内容,例如使用 document.write
输出.
隐式转换是否适用于 通过 JSONP 在该文件中定义的例程获取的数据?我不知道。我的猜测是,可能不会。我现在无法对其进行测试,但如果您这样做,我会对结果非常感兴趣。
关于Javascript 将数据从 utf-8 转换为 iso-8859-1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2187849/