我有一个函数将包含特殊字符的字符串分配给变量,然后通过innerHTML
属性将该变量传递给DOM元素,但它会打印奇怪的字符。假设我编码了这个......
someText = "äêíøù";
document.getElementById("someElement").innerHTML = someText;
它打印以下文字......
äêÃøù
我知道如何使用实体名称来防止这种情况,但是当我使用它们通过Javascript方法传递值时,它们会按字面打印。
答案 0 :(得分:4)
这意味着您遇到了编码冲突。您的JavaScript和HTML将以不同的编码/字符集提供给浏览器。确保它们已编码并served with 相同的编码/字符集(UTF8为good choice),以确保正确解释字符。