Это скорее информационный пост, чем вопрос. Но я оставлю открытый вопрос; если вы можете улучшить идею, поделитесь ею. ~ EDIT
Есть ли лучший способ хранения переменной в ОМТ? Я придумал этот метод, и он работает, но я не уверен, что это лучший способ сделать это;
Предисловие: я новичок в кодировании.
Я работаю над графическим интерфейсом (завернутый в HTA), который поддерживается VBScript. Я искал способ динамически хранить переменные, которые я мог бы легко вызвать в других subs/functions независимо. Это то, что я придумал;
Код 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, - это фактическое размещение div в html. Я обычно помещаю эти div в конец моего html-объекта.
В любом случае, я просто официально присоединился. Я использую этот сайт с тех пор, как начал кодирование (не слишком долго), но я решил, что начну участвовать.
С помощью VB Script вы можете просто определить глобальную переменную, которую вы можете назвать, и изменить ее из любого места в коде, даже в Javascript, если вы добавили это в hta.
<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 установлен на "display: никто."
<div id=theDiv style="display:none"></div>
затем theDiv.InnerHTML = MyValue
или MyValue = theDiv.InnerHTML
т.д.