将 jQuery 添加到 HTA 后调用 VBScript 过程停止工作

Calling VBScript procedure stops working after adding jQuery to HTA

我正在尝试使用 VBScript 和 jQuery 构建 HTA。

使用 VBScript 完成主脚本后,我开始添加 jQuery 插件,但是现在遇到问题 运行 我原来的 VBScript。

我添加了

<meta http-equiv="X-UA-Compatible" content="IE=9"/>

到我脚本的顶部。

我只是想从 VBS 调用一个 sub,按照下面的按钮:

<input type=button id=computerstart name=computerstart value='Retrieve Logs'
    width=100px onclick= "vbscript:GetLogs">

但是,当我单击 "Retrieve Logs" 按钮时,我收到如下错误消息:

Error : 'GetLogs' is undefined
Source: Microsoft JScript runtime error

这在我看来很像是在忽略我的 vbscript:GetLogs 电话? 环顾四周,我可以看到不同的文章说明应该先使用哪种语言,虽然我尝试将 JS 重新定位在 VBS 之上,但似乎没有任何解决办法。

使用括号如下:

<input type=button id=computerstart name=computerstart value='Retrieve Logs'
    width=100px onclick= "vbscript:GetLogs()">

测试HTA:

<html> 
  <head> 

    <meta http-equiv="x-ua-compatible" content="ie=9" />

    <title>33823891b.hta</title> 
    <HTA:APPLICATION ID = "33823891b" APPLICATIONNAME = "33823891b" >

    <script language="VBScript" type="text/vbscript">
        Sub ExitWindow()
            self.close()
        End Sub

        Sub GetLogs()
          Msgbox document.location & " works"
        End Sub
    </script>
  </head> 

  <body>
    <!-- original does not work with http-equiv="x-ua-compatible" content="ie=9" -->
    <input type=button id=computerstart name=computerstart value='Retrieve Logs'
           width=100px onclick= "vbscript:GetLogs">
    <br><br>
    <!-- adjusted, works with http-equiv="x-ua-compatible" content="ie=9" -->
    <input type=button id=computerstar2 name=computerstar2 value='Retrieve Log2'
           width=100px onclick='vbscript:GetLogs()'>
    <br><br>
    <!-- example, works in both cases -->
    <input id=runbutton type=button value="Exit" onClick="ExitWindow()">
  </body> 
</html>

另见 this my answer to another questionHTA 使用不同的元 http-equiv 标签给出不同的结果,例如

<meta http-equiv="x-ua-compatible" content="IE=9">

<meta http-equiv="content-type" content="text/html">

(后者似乎与完全省略 meta http-equiv 标记一样)。其他 legacy document modes 未测试。