动态加载JavaScript文件和非ASCII字符
-
25-09-2019 - |
题
我有以下问题:
<script type="text/javascript">
alert("1. ČĆŽŠĐčćžšđ");
</script>
<script type="text/javascript" src="Tst.js"></script>
<script type="text/javascript">
var pScript = document.createElement("script");
pScript.type = "text/javascript";
pScript.src = "Tst.js";
pScript.charset = "windows-1250";
$("body").append(pScript);
</script>
(这些是克罗地亚语字符。)
Tst.js的内容是:
alert("2. ČĆŽŠĐčćžšđ");
这个脚本在FireFox的输出(和Safari浏览器,所以我的结论是,这是不是与浏览器的问题,但我的代码):
1. ČĆŽŠĐčćžšđ
2. ČĆŽŠĐčćžšđ
2. �Ǝ���枚�
字符集正在调用该代码的主网页是视窗-1250。
我不明白,为什么当我打电话Tst.js静态(由<script src="Tst.js" type="text/javascript"></scipt>
)的字符显示正常,但是当我包括动态Tst.js人物去bannanas ...
和可惜我不能端口的所有我的代码为UTF-8。
任何意见?
解决方案
月2日更新:指定编码中的JavaScript文件的内容类型头的伎俩 - 无论出于何种原因
更新:您要设置的字符集的加载脚本后的。 尝试
<script type="text/javascript">
var pScript = document.createElement("script");
pScript.type = "text/javascript";
pScript.charset = "windows-1250";
pScript.src = "Tst.js";
$("body").append(pScript);
</script>
不隶属于 StackOverflow