VBScript IE自动化 - 在确认弹出窗口中按“确定”

时间:2011-05-26 19:42:21

标签: vbscript

我正在自动化Web应用程序。我现在可以通过网页在表单中输入一些信息,然后按“提交”按钮。但是,页面需要在提交表单之前进行确认。它调用confirm()函数,该函数弹出一个小窗口,其中包含Ok或Cancel。我想自动点击'确定'。

它不适用于SendKeys,因为当调用confirm()弹出功能时,Wscript似乎暂停&在继续之前等待确认(确定或取消)。

我的代码附在下面:

 Set objIE = CreateObject("InternetExplorer.Application")
 objIE.Visible = True
 objIE.Navigate "www.abc.com"
 Do While objIE.Busy Or (objIE.READYSTATE <> 4)
     Wscript.Sleep 100
 Loop

 objIE.Document.all(73).value = "Testing…" 'this is the form input
 objIE.Document.all(106).click  'this is the submit button

 'Confirm box will come up here & I want to press 'Ok'

 ***'Something in here to press the popup Ok button???***

非常感谢!

3 个答案:

答案 0 :(得分:1)

简单但不完全失败的解决方案:在点击之前,通过WSH启动一个新的VBScript文件,等待1秒钟,然后进行sendkey "{ENTER}"操作。

答案 1 :(得分:0)

以下当然也不是失败证明。

您可以使用SendKeys代替objIE.Document.all(106).click点击提交按钮吗?

如果是这样,那么您可以尝试连续发送两个密钥,即SendKeys "{ENTER}{ENTER}"(或者在每种情况下需要两个密钥)。

如果没有,那么您可以尝试在使用SendKeys "{ENTER}" 点击提交按钮之前发送objIE.Document.all(106).click (确保未选择任何字段后)。在某些情况下,发送的密钥将保留在内存中,直到适用时为止。

答案 2 :(得分:0)

您可以尝试以下方法:

objIE.Document.all.item("106").click

找到该项目并单击它。