2

次の問題があります。

<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. �Ǝ���枚�

このコードを呼び出しているメイン ページの文字セットは Windows-1250 です。

Tst.js を静的に (by で) 呼び出すと文字が正常に表示される理由がわかりませんが<script src="Tst.js" type="text/javascript"></scipt>、Tst.js を動的に含めると文字がバナナになります...

残念ながら、すべてのコードを UTF-8 に移植することはできません。

何かアドバイス?

4

1 に答える 1

2

2 回目の更新: JavaScript ファイルの content-type ヘッダーでエンコーディングを指定するとうまくいきました - なんらかの理由で!

更新:スクリプトを読み込んだ後に文字セットを設定しています。試す

<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>
于 2010-03-06T09:58:06.253 に答える