首先,检查文档标题是否包含。
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
你也可以读出的元标记使用javascript:
var metaTags = document.getElementsByTagName("META");
如果是这样,这是行为的解释。你可以尝试改变UTF-8到ISO-8859-1:
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
更好的是所有的HTMLEncode扩展字符在你的HTML。像这样:
function encodeHTML(str){
var aStr = str.split(''),
i = aStr.length,
aRet = [];
while (--i) {
var iC = aStr[i].charCodeAt();
if (iC < 65 || iC > 127 || (iC>90 && iC<97)) {
aRet.push('&#'+iC+';');
} else {
aRet.push(aStr[i]);
}
}
return aRet.reverse().join('');
}
请注意,这个函数会编码所有不是[a-zA-Z]的东西。这个函数会将Doppelgänger编码为Doppelg &#228;例如nger。
很酷。无论如何,我发现问题是与HTML页面本身。 – 2009-05-07 19:03:49