Javascript字符串不支持特殊字符

时间:2015-01-31 22:31:25

标签: javascript string hta

我有一个3帧的HTA,整体看起来像这样:

<html>
<head>
<script type="text/javascript">
     function f(){
          frames["toolbar"].document.write("Toolbar");
          frames["statusbar"].document.write("Status bar");
     }
</script>
<frameset rows="65,*,19" onload="f()">
     <frame src="about:blank" name="toolbar" application="yes"/>
     <frame src="url.html" name="main" application="yes"/>
     <frame src="about:blank" name="statusbar" application="yes"/>
</frameset>
</html>

注意:工具栏和状态栏框架的内容比此处指定的内容更复杂。

请注意,使用JavaScript定义了两个框架,但没有真正的URL。

由于这个HTA是瑞典语,我需要使用瑞典特殊字母å,ä和ö,例如alert("Du är inte uppkopplad")。问题是在工具栏框架和状态栏框架中,内容已在JavaScript中定义,此警报框如下所示: enter image description here

它用工具栏框架和状态栏框架中的丑陋方块替换ä,但不替换主框架(具有真实URL)。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果我在父HTA中创建一个变量,它的值为ä,就可以了。

主要HTA:

<html>
<head>
<script type="text/javascript">
     function f(){
          frames["toolbar"].document.write("<script type='text/javascript' src='script.js'><\/script>");
          frames["statusbar"].document.write("Status bar");
     }
     var a = "ä"
</script>
<frameset rows="65,*,19" onload="f()">
     <frame src="about:blank" name="toolbar" application="yes"/>
     <frame src="url.html" name="main" application="yes"/>
     <frame src="about:blank" name="statusbar" application="yes"/>
</frameset>
</html>

的script.js:

alert("Du " + parent.a + "r inte uppkopplad");

感谢t.niese在评论中给我这个想法。