在HTA内的Javascript中访问VBScript变量

时间:2011-12-23 21:06:43

标签: javascript variables vbscript hta

我正在尝试在一个hta文件中访问我在vbscript中设置的javascript变量:

<script type="vbscript">
    var globalVariable = test123
</script>

<script type="text/javascript">
    var globalVariable = <%= globalVariable %>;
</script>

这不会用任何东西填充变量globalVariable。我也试过了

var globalVariable = "<%= globalVariable %>";

这只是将引号中的字符串填充到变量globalVariable中。

我无法在VBScript部分中设置值'test123'来填充JS部分中的JS变量。

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:4)

根据您的问题,我编写了一个包含以下代码的HTA:

<script type="text/vbscript">
dim globalvariable
globalvariable = "test123"
</script>
<script type="text/javascript">
alert(globalvariable);
</script>

,警告框中显示值“test123”。

请注意以下与您的代码的不同之处:

  • vbs语言语法与js语法不同;
  • 你的js代码看起来像我的asp代码,而不是js;
  • 我收到了一条错误消息“'没有'text /'前缀;

答案 1 :(得分:3)

如果您只是遵循每种语言的语法规则(例如VBScript中没有“var”),那么在.HTA App中混合语言很容易。

<html>
 <head>
  <hta:application id = "mix"></hta>
  <script LANGUAGE="VBScript">
  Dim gsX : gsX = "global VBScript variable"
  </script>
  <script LANGUAGE="JScript">
  alert(gsX);
  </script>
 </head>
 <body>
 </body>
</html>

答案 2 :(得分:1)

你可以使用像隐藏输入字段这样的DOM元素在VBScript和JS之间进行通信吗?如果可行,您可以在值更改时触发自定义事件,并在两个部分上侦听该事件。

之前我从未使用过VBScript,所以这可能是不可能的。