从HTML事件处理程序调用vbscript

时间:2011-08-26 13:01:49

标签: vbscript

我有一个调用vbscript的下拉列表。问题是当我尝试获取下拉列表的值时,我得到“对象不支持属性”或“方法错误”。

<select onchange='callMe()' id='selectMe'>
<option value='1'>1</option>
<option value='3'>3</option>
<option value='2'>2</option>
</select>

<SCRIPT LANGUAGE="VBScript">
Sub callMe()
MsgBox(selectMe.value)
End Sub
</SCRIPT>

任何人都可以指出我正确的方向

2 个答案:

答案 0 :(得分:1)

您可以在HTML DOM Select Object上使用W3Schools参考。

  • 使用selectMe.options
  • 使用selectMe.selectedIndex

使用VBScript时,您将获得基于对象的 id 的隐式事件,因此您无需显式调用它们(即selectMe_onchange)。我按照以下方式重新设计了您的示例:

<html>
  <head>
    <title>VBScript Select event</title>
    <script LANGUAGE="VBScript">
      Sub selectMe_onchange
      MsgBox selectMe.options(selectMe.selectedIndex).text
      End Sub
    </script>
  </head>
  <body>
    <select id='selectMe'>
      <option value='1'>1</option>
      <option value='3'>3</option>
      <option value='2'>2</option>
    </select>
  </body>
</html>

答案 1 :(得分:1)

你可以做Stephan Quan发布的内容,因为在页面中的位置无关紧要。头部或身体放置

在以下示例中,您需要在使用

之前创建select元素所需的正文中

' if you just need to display
msgbox document.getElementById("selectMe").value ' if you need to do something with the value dim somevariable somevariable = document.getElementById("selectMe").value

在第二个示例中,somevariable将包含所选选项

中的value属性