单击时将 HTML 标记的 id 传递给 <li> VBScript 子例程



我有很多VBScripts,我计划给一个GUI前端(使用HTA)。在HTA窗口的顶部,我有一个下拉菜单栏,如下所示(没有包含CSS代码,因为我认为它不会添加任何相关信息)。

我已经尝试了一段时间,但一直无法弄清楚如何将被单击的li的id值传递给menucclicked子例程。

我以前使用HTML的经验是用它来创建静态文档,所以我可能都错了。如果是这样的话,请告诉我。

<script type="text/VBScript">
  Sub MenuClicked()
    Select Case WhatDoIPutHere
      Case "#Option1A" : Sub_Option1A
      Case "#Option1B" : Sub_Option1B
      Case "#Option2A" : Sub_Option2A
      Case "#Option2B" : Sub_Option2B
      Case "#Option3"  : Sub_Option3
    End Select
  End Sub
</script>
<div>
  <ul id="nav" class="drop" onClick="MenuClicked()">
    <li><a>Option1A</a>
      <ul>
        <li id="#Option1A"><a>Option 1A</a></li>
        <li id="#Option1B"><a>Option 1B</a></li>
      </ul>
    </li>
    <li><a>Option 2</a>
      <ul>
        <li id="#Option2A"><a>Option 2A</a></li>
        <li id="#Option2B"><a>Option 2B</a></li>
      </ul>
    </li>
    <li id="#Option3"><a>Option 3</a></li>
  </ul>
</div>

由于http是由Internet Explorer引擎运行的,因此您应该使用srcElement属性

<script type="text/VBScript">
  Sub MenuClicked()
    Dim target
    ' .parentNode because the <a> element is really what's being clicked,
    ' but we want the ID of the <li> element
    Set target = window.event.srcElement.parentNode
    Select Case target.id
      Case "#Option1A" : Sub_Option1A
      Case "#Option1B" : Sub_Option1B
      Case "#Option2A" : Sub_Option2A
      Case "#Option2B" : Sub_Option2B
      Case "#Option3"  : Sub_Option3
    End Select
  End Sub
</script>
<div>
  <ul id="nav" class="drop" onClick="MenuClicked()">
    <li><a>Option1A</a>
      <ul>
        <li id="#Option1A"><a>Option 1A</a></li>
        <li id="#Option1B"><a>Option 1B</a></li>
      </ul>
    </li>
    <li><a>Option 2</a>
      <ul>
        <li id="#Option2A"><a>Option 2A</a></li>
        <li id="#Option2B"><a>Option 2B</a></li>
      </ul>
    </li>
    <li id="#Option3"><a>Option 3</a></li>
  </ul>
</div>

我是这样做的:

<script type="text/VBScript">
  Sub MenuClicked(obj)
    Select Case obj.id
      Case "#Option1A" : Sub_Option1A
      Case "#Option1B" : Sub_Option1B
      Case "#Option2A" : Sub_Option2A
      Case "#Option2B" : Sub_Option2B
      Case "#Option3"  : Sub_Option3
    End Select
  End Sub
</script>
<div>
  <ul id="nav" class="drop">
    <li><a>Option1A</a>
      <ul>
        <li id="#Option1A" onClick="MenuClicked Me"><a>Option 1A</a></li>
        <li id="#Option1B" onClick="MenuClicked Me"><a>Option 1B</a></li>
      </ul>
    </li>
    <li><a>Option 2</a>
      <ul>
        <li id="#Option2A" onClick="MenuClicked Me"><a>Option 2A</a></li>
        <li id="#Option2B" onClick="MenuClicked Me"><a>Option 2B</a></li>
      </ul>
    </li>
    <li id="#Option3" onClick="MenuClicked Me"><a>Option 3</a></li>
  </ul>
</div>

相关内容

  • 没有找到相关文章

最新更新