直接从PowerShell

时间:2016-06-28 20:50:28

标签: javascript html powershell

我正在导航到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"

有没有办法可以直接执行此操作而无需遍历所有链接?

1 个答案:

答案 0 :(得分:0)

检查您需要的元素是否具有您可以搜索的任何明显功能 - idclass,如果它没有这样,最好的选择是检查它' s ancestors - 包含所有链接或类似内容的div元素,并搜索其子代 - element.childrenelement.childNodes。如果您要搜索特定的onclick内容,this answer可以提供帮助(element.getAttribute('onclick'))。