我正在尝试自动点击网页上的单选按钮。这是相关的HTML代码:
<TD width="25%"><SPAN>RW B</SPAN></TD>
<TD width="15%"><INPUT onclick="SetAccessLevel('B','RW');" id=Ctrl_59296626_ctl95 type=radio value=ctl95 name=Ctrl_59296626$GroupAccess></TD>
我想点击第二个TD中的单选按钮。
我无法使用元素ID,因为我打算在ID和值不同但布局相同的其他相同类型的网页上使用相同的宏。
在网页上,这就像点击文字“RW B”旁边的单选按钮一样简单。
我一直试图让宏用内部HTML“RW B”锁定前一个TD,然后单击下一个TD标签中的INPUT项。
到目前为止,我已尝试以下方法但没有成功:
1
For Each ele In objIE.Document.getElementsByTagName("span")
If ele.innerHTML Like "RW B" Then
ele.NextSibling.FireEvent ("onclick")
End If
Next
2
For Each ele In objIE.Document.getElementsByTagName("span")
If ele.innerHTML Like "RW B" Then
ele.NextSibling.Children(0).FireEvent ("onclick")
End If
Next
3
Var element = objIE.Document.querySelector("input[onclick^='SetAccessLevel('B','RW'']")
4
For Each ele In objIE.Document.getElementsByTagName("td").
If ele.innerHTML Like "RW B" Then
ele.NextSibling(0).Firevent ("onclick")
End If
Next
我也尝试过meta.Focus,element.Click的变体而不是FireEvent方法。
任何帮助都表示赞赏,因为我花了太多时间试图让它发挥作用。提前谢谢!
编辑:这是来自页面的更多HTML代码 -
<DIV style="BORDER-TOP-STYLE: ridge; BORDER-BOTTOM-STYLE: ridge; BORDER-RIGHT-STYLE: ridge; BORDER-LEFT-STYLE: ridge"><TABLE width="98%">
<TBODY>
<TR>
<TD width="25%"><SPAN style="FONT-WEIGHT: bold">Group Name</SPAN></TD>
<TD width="25%"><SPAN style="FONT-WEIGHT: bold; align: center">Access Rights</SPAN></TD>
<TD width="15%"><SPAN style="align: center"></SPAN></TD>
<TD width="25%"><SPAN style="FONT-WEIGHT: bold">Owners</SPAN></TD>
<TD width="15%"><SPAN style="align: center"></SPAN></TD></TR>
<TR>
<TD width="25%"><SPAN>Group RW B</SPAN></TD>
<TD width="25%"><SPAN>RW B</SPAN></TD>
<TD width="15%"><INPUT onclick="SetAccessLevel('B', 'RW');" id=Ctrl_59296626_ctl95 type=radio value=ctl95 name=Ctrl_59296626$GroupAccess></TD>