innerHTML 无法正确显示 unicode 文本



这段代码有什么问题:

document.getElementById("artist").innerHTML = "Jürgen";

如何使带有 à ü ë 等的文本正确显示?

在我设置的头部:

meta charset="UTF-8"
meta http-equiv="content-type" content="text/html; charset=UTF-8"

但这似乎行不通。

我还尝试用 \uü 替换 ü。也没用。

是的,需要使用特殊的HTML代码来显示这些字母。只需将这些提供的代码(不带引号(粘贴到HTML中需要这些字母/符号的任何位置,如下所示:

<p>My letter a fancy is like this &aacute;</p>
  1. 对于 à 使用"&aacute"

  2. 对于 ü 使用"&uuml";

  3. 对于 ë 使用"&euml";

对于变音符号,您需要将 u 替换为以下 html 代码,该代码应显示正确的输出

&uuml;

要正确声明您的字符集,请注意它必须是:

<head>元素中,

在任何包含文本的元素(如<title>元素(之前,

和 在文档的前 512 个字节内,包括 DOCTYPE 和空格

(来源:code.google.com(

简而言之,它应该是您的页面中的第一件事<head>.

另外,我再也找不到参考了,但是似乎同时使用<meta charset="utf-8"><meta http-equiv="content-type" content="text/html; charset=UTF-8">在语法上不正确。至少,这是没用的,它们的意思是一样的。第二个已弃用,应仅用于非常旧的浏览器兼容性。

当然,您的HTML文件也应该以UTF-8保存。

我希望它能解决你的问题

如果您使用的是 PHP,请尝试使用 utf8_encode(text( 看看是否有效!

例:

var html = `
<p class="project-title"><?php print utf8_encode($title); ?></p>
<p class="project-desc"><?php print utf8_encode($description); ?></p>`
document.body.innerHTML += html;

这对我有用:)

相关内容

  • 没有找到相关文章

最新更新