将VBScript变量存储在hta html标记中

时间:2013-11-01 18:44:55

标签: html variables dynamic vbscript hta

这更像是一个信息性帖子,而不是一个问题。但我会留下一个开放式的问题;如果你能改进这个想法请分享。 ~EDIT

有没有更好的方法在HTA中存储变量?我已经提出了这种方法并且它有效,但我不确定这是否是最好的方法;

前言:我是编码的新手。

我一直在研究以VBScript为基础的GUI(包含在HTA中)。我正在寻找一种动态存储变量的方法,我可以轻松地在其他子/函数中独立调用这些变量。这就是我想出来的;

psuedo代码:

Function StoreVar()
    If somecondition = "someexpectation" Then
      source.InnerHTML = "<a name='myVar' value='var1'></a>"
    Else 
      source.InnerHTML = "<a name='myVar' value='var2'></a>"
    End If
End Function

标记;

<div id="source"></div>
<input type="button" name="Show Variable" onclick="CallVar()" />

调用存储的变量;

Function CallVar()
   MsgBox myVar.value
End Function

相当直接,但是使用了一点技巧,因为你从未看到存储的实际变量,因为它进入的div没有出现在GUI中。它可能对GUI产生的唯一影响是在html中实际放置div。我通常把这些div放在我的html主体的末尾。

无论如何,我刚刚正式加入。自从我开始编码(不太长)以来,我一直在使用这个网站,但我想我会开始贡献。

1 个答案:

答案 0 :(得分:1)

使用VB脚本,您可以定义一个全局变量,然后您可以调用它并在代码中的任何位置更改它,即使在Javascript中添加了该变量也是如此。

<script language="VBScript" type="text/vbscript">
Dim MyValue

Sub storeValue(theValue)
    If theCondition Then
        MyValue = theValue
    Else
        MyValue = "Something Else"
    End If
End Sub

Sub retrieveValue
    MsgBox MyValue
End Sub 
</script>

<script language="javascript" type="text/javascript">
    function clearValue() {
        MyValue = ""
    }
</script>

编辑:我想编辑说,我实际上正在为HTA使用的一些变量做你提到的,除了我将InnerHTML的值存储为“值”并且我的div设置为“显示:无”

<div id=theDiv style="display:none"></div>
然后
theDiv.InnerHTML = MyValueMyValue = theDiv.InnerHTML