4

在一个外部 javascript 文件中,我有一个函数用于将文本附加到表格单元格(在添加了 javascript 文件的 HTML 文档中),文本有时可以包含芬兰语字符(例如 ä)。该文本作为参数传递给我的函数:

content += addTableField(XML, 'Käyttötarkoitus', 'purpose', 255);

问题是诸如“ä”之类的变音符号被转换为其他一些虚假字符,例如“�”。我在浏览器中查看 HTML 文档时看到了这一点。这显然是不可取的,而且也很奇怪,因为 HTML 文档的字符编码是 UTF-8。

我怎么解决这个问题?

提前感谢您的帮助!

4

3 回答 3

4

包含的文件content += addTableField(XML, 'Käyttötarkoitus', 'purpose', 255);未以 UTF-8 编码保存。

我不知道您使用的是什么编辑器,但您可以在设置或保存对话框中找到它。

例子:

如果你不能让它工作,你总是可以在 javascript 中写出文字代码点:

content += addTableField(XML, 'K\u00E4ytt\u00f6tarkoitus', 'purpose', 255);

信用:三重奏

于 2012-05-30T16:11:41.350 回答
1

要检查服务器宣布的字符编码,您可以使用 Firebug(在 Info 菜单中,有一个用于查看 HTTP 标头的命令)。或者,您可以使用Web-Sniffer等在线服务。

如果外部 .js 文件的标头指定了 charset 参数,则需要使用该编码,除非您可以更改相关的服务器设置(可能是 .htaccess 文件)。

如果它们缺少字符集参数,您可以在script元素中指定编码,例如<script src="foo.js" charset="utf-8">.

声明的编码当然应该与实际编码匹配,您通常可以在保存文件时选择(如果需要,使用“另存为”命令)。

于 2012-05-30T17:30:41.277 回答
0

HTML 文件/文档的字符编码与任何外部资源无关。

您将需要使用 UTF8 字符编码提供脚本文件。如果它是这样保存的,那么您的服务器配置是伪造的。

于 2012-05-30T16:15:06.700 回答