如何访问没有ID或名称的HTML控件?

时间:2015-03-02 09:55:52

标签: vbscript

我正在编写VBScript来访问网站并进行一些操作

Dim IE
Dim Helem
Dim hwnd
Dim Wnd

Set IE = CreateObject("InternetExplorer.Application")
hwnd = IE.hwnd

IE.Visible = 1 
IE.Navigate "MySite.com"

Do While IE.ReadyState <> 4
    WScript.Sleep 10
Loop

IE.document.getElementById("username").value = "user"

之后我必须点击HTML中没有ID或名称的超链接

<div id="menu">
    <a href="some URL">click me 1</a>
    <a href="some URL">click me 2</a>
    <a href="some URL">click me 3/a>
    <a href="some URL">click me 4</a>
</div>

有人可以帮我这个......

1 个答案:

答案 0 :(得分:0)

最简单的方法是将适当的id标记注入给定的HTML,但如果您没有访问权限或权限,则可以始终使用document.childNodes并直接遍历DOM以查找你关心的元素。

 Set myRootNode = IE.document.getElementById("menu").childNodes();

  For i = 0 To myRootNode.length - 1

      if (myRootNode(i).innerText == "click me 1" ) then
          myRootNode(i).doClick()
      end if

  Next i

&#34; doClick()&#34;部分很可能是不正确的,因为我实际上已经十多年没有真正触及vb(或任何微软操作系统)。但这应该指向正确的方向。