document.write 中未显示 VBScript 变量

VBScript variable not displaying in document.write

我正在写一个 HTA 来做一些基本的事情,我需要做的一件事是显示空闲硬盘 space。我有 VB 脚本的这一部分:

Dim FreeHDSpace
Dim test32
test32 = 56

Sub Window_onLoad
    Dim FreeHDSpace
    window.resizeTo 550,700
    Set objWMIService = GetObject("winmgmts:")
    Set objLogicalDisk = objWMIService.Get("Win32_LogicalDisk.DeviceID='c:'")
    FreeHDSpace = objLogicalDisk.FreeSpace
    FreeHDSpace = FreeHDSpace / 1024
    FreeHDSpace = FreeHDSpace / 1024
    FreeHDSpace = FreeHDSpace / 1024
    FreeHDSpace = Int(FreeHDSpace)
    FreeHDSpace = CStr(FreeHDSpace)
    msgBox(FreeHDSpace)
End Sub

我的这一部分 HTML:

<p><font  face="tahoma" color="white" size="4">Hard drive space remaining:</font>
<script type="text/VBScript">
    document.write "<font size='4' face='Tahoma' color='white'>" & FreeHDSpace & " Gb</font>"
</script></P>

如果我在 test32 中使用变量而不是 HTML 中的 FreeHDSpace,它会显示 56。如您所见,我已尝试将其更改为字符串并将其格式化为较小的数字。

我被严重卡住了,非常感谢任何建议。

您在处理 <script> 元素时读取变量 然后 window 的加载事件触发,触发为变量提供 a 的函数值(但为时已晚!)。

您无需等待加载事件就可以为变量赋值。