我正在导航到Internet Explorer中的网页。我想自动点击此网页上的链接。我目前正在遍历所有HTML元素,标记为' a'在页面上,直到我找到一个我正在寻找的标题 - 在这一点上我.click()它:
$links = $ie.document.getElementsByTagName("a")
Foreach($link in $links )
{
#look for this field by value
$link.title
if($link.title -eq "Link I would like to click"){
Write-Host $link.click()
}
}
我正在寻找的链接没有ID,因此document.getElementById()不是一个选项。此特定链接的onclick事件定义为:
onclick="jsf.util.chain(this,event,'pageLoadStart();','mojarra.jsfcljs(document.getElementById(\'navPanelForm\'),{\'navPanelForm:j_idt689:j_idt689\':\'navPanelForm:j_idt689:j_idt689\'},\'\')');return false"
有没有办法可以直接执行此操作而无需遍历所有链接?
答案 0 :(得分:0)
检查您需要的元素是否具有您可以搜索的任何明显功能 - id或class,如果它没有这样,最好的选择是检查它' s ancestors - 包含所有链接或类似内容的div元素,并搜索其子代 - element.children
或element.childNodes
。如果您要搜索特定的onclick内容,this answer可以提供帮助(element.getAttribute('onclick')
)。