2017-09-26 120 views
0

我正在写一个HTA来做一些基本的事情,我需要的一件事就是显示空闲的硬盘空间。我有本节的VB脚本:在我的HTMLVBScript变量不显示在document.write中

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 

而且本节:

<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> 

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

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

回答

1

你读的变量时,<script>元素被处理然后窗口的加载事件触发,触发这给变量的值的函数(但为时已晚!)。

在给变量赋值之前,您不需要等待加载事件。

+0

是的!我将它们移动到onLoad子文件之外,并且完全加载! – CSiciliano