特殊字符在Javascript字符串中无法正确显示

时间:2014-01-18 22:21:26

标签: javascript

我有一个函数将包含特殊字符的字符串分配给变量,然后通过innerHTML属性将该变量传递给DOM元素,但它会打印奇怪的字符。假设我编码了这个......

someText = "äêíøù";
document.getElementById("someElement").innerHTML = someText;

它打印以下文字......

äêÃøù

我知道如何使用实体名称来防止这种情况,但是当我使用它们通过Javascript方法传递值时,它们会按字面打印。

1 个答案:

答案 0 :(得分:4)

这意味着您遇到了编码冲突。您的JavaScript和HTML将以不同的编码/字符集提供给浏览器。确保它们已编码并served with 相同的编码/字符集(UTF8为good choice),以确保正确解释字符。

强制性链接:The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)