自动执行Onclick屏幕弹出窗口

时间:2019-09-02 14:07:19

标签: powershell internet-explorer onclick

使用IE,我已经自动化了一个网站,但是在完成所有工作之后,我陷入了抛出对话框“来自网页的消息”“确定”或“取消”的表单。

Dialogue Box Image

Brower的HTML检查:

<div class="formbuttons">

<input name="Deactivate" class="formsubmit deactivate" id="ButtonDeactivate" 
style="width: 160px;" onclick="return confirm('Are you sure you want to 
deactivate the feature?');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(
&quot;ctl00$ContentPlaceBody$ButtonDeactivate&quot;,&quot;&quot;, true, &quot;
&quot;, &quot;&quot;, false, false))" type="submit" value="Deactivate">

</div>

我尝试过的方法:

1。通过从html删除onclick,但尽管正则表达式实际上已将其删除也没有帮助

    [String] $body = "onclick=.*feature....."
    $ie.Document.body.innerHTML -replace "$body", ""
    $deactivate=$ie.document.getElementById("ButtonDeactivate")
    $deactivate.Click();

2。通过添加此处(Automating IE confirmation prompt with Powershell)所述的几句话

    $ie.document.forms | Select -First 1 | % { $_.submit() } 

我唯一的动机是单击“确定”弹出按钮。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

尝试查询项目的“外部HTML”属性以获取HTML代码。然后,您要做的就是用“”替换“确认(*)”。之后,您可以将其设置回脚本中,然后单击它。

$Script = $IE.document.getElementsByTagName("script").item(#----------Whatever Number it is)
$Script.outerHTML = $Script.outerHTML | % {if ($_ -like "return confirm*") {"return true;"} else {$_}}
$autotransbtn.Click()

参考:

(1)Automating JavaScript confirmation prompt in IE using PowerShell

(2)internet explorer - Automating IE confirmation prompt with Powershell