VBScript IE автоматизация - Нажатие «ОК» во всплывающем окне подтверждения - PullRequest
1 голос
/ 26 мая 2011

Я автоматизирую веб-приложение. В настоящее время я могу получить веб-страницу, чтобы ввести некоторую информацию в форму и нажать кнопку «Отправить». Тем не менее, страница требует подтверждения перед отправкой формы. Вызывает функцию Подтверждение (), которая выскакивает небольшое окно с Ок или Отмена. Я хочу автоматизировать нажатие кнопки «ОК».

Он не работает с SendKeys, потому что когда вызывается всплывающая функция Подтверждение (), Wscript, кажется, приостанавливает и ждет подтверждения (Ok или Отмена), прежде чем продолжить.

Мой код прикреплен ниже:

 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???***

Большое спасибо!

Ответы [ 2 ]

1 голос
/ 27 мая 2011

Простое, но не полностью отказоустойчивое решение: незадолго до щелчка запустите новый файл VBScript через WSH с ожиданием в 1 секунду и действием sendkey "{ENTER}".

0 голосов
/ 27 мая 2011

Следующее, конечно, также не является доказательством отказа.

Можете ли вы нажать кнопку отправки, используя SendKeys вместо objIE.Document.all(106).click?

Если это так, то вы можете попробовать отправить два ключа подряд, т. Е. SendKeys "{ENTER}{ENTER}" (или любые два ключа, которые требуются в каждом случае).

Если нет, то вы можете попробовать отправить SendKeys "{ENTER}" до , нажав кнопку отправки, используя objIE.Document.all(106).click (убедившись, что поле не выбрано). В некоторых случаях отправленный ключ сохраняется в памяти до тех пор, пока он не будет применим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...