Вопрос

У меня есть следующая проблема:

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

Charset на главной странице, которая вызывает этот код, является Windows-1250.

Я не понимаю, почему, когда я звоню st.js статически ( <script src="Tst.js" type="text/javascript"></scipt>) символы отображаются нормально, но когда я динамически включаю в себя TST.js, символы идут Баннанас ...

И, к сожалению, я не могу портировать весь свой код 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>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top