Перейти к содержимому

Фотография

Не могу обработать confirm


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 Froggy

Froggy

    Активный участник

  • Members
  • PipPip
  • 142 сообщений
  • Город:СПб

Отправлено 24 февраля 2010 - 13:49

Исходные данные: ИЕ 6, на веб-странице кнопка, по которой вызывается конфёрм-окно с двумя кнопками - ОК и Отмена

Вариант автоматизации первый
[codebox]
//нажатие кнопки
window = Sys.Process("iexplore").Window("IEFrame", "*").Page("*").ToURL("http://бла-бла-бла.ру")
window.document.all.item(162).Click();
//обработка конфёрма
Sys.Process("iexplore").Window("#32770", "Microsoft Internet Explorer").Window("Button", "ОК").Click()[/codebox]
работает без проблем. За исключением одного "но" - меня не устраивает item(162)

Вариант второй
[codebox]
//нажатие кнопки
//массив объектов-кнопок на странице
window = Sys.Process("iexplore").Window("IEFrame", "*").Page("*").ToURL("http://бла-бла-бла.ру")
InputItems = window.document.getElementsByTagName("input");

for (var i=0; i<InputItems.length; i++)
{//Ищем кнопку с заданным названием
if (InputItems(i).value == "Кнопка")
{
InputItems(i).Click();
break;
}
}
//обработка конфёрма
Sys.Process("iexplore").Window("#32770", "Microsoft Internet Explorer").Window("Button", "ОК").Click()[/codebox]
Здесь на кнопку мы нажимаем успешно, но до обработки конфёрма доехать не получается - просто висим и чего-то ждем, хотя окно конфёрма активно

Никто не сталкивался с ситуацией?
  • 0

#2 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 25 февраля 2010 - 07:07

Здравствуйте.

//нажатие кнопки
window = Sys.Process("iexplore").Window("IEFrame", "*").Page("*").ToURL("http://бла-бла-бла.ру")
window.document.all.FindChild("value", "Кнопка", 100).Click();
//обработка конфёрма
Sys.Process("iexplore").Window("#32770", "Microsoft Internet Explorer").Window("Button", "ОК").Click()

А по поводу зависания читайте раздел справки Calling Methods Asynchronously.
  • 0
С уважением,
Дмитрий

#3 Froggy

Froggy

    Активный участник

  • Members
  • PipPip
  • 142 сообщений
  • Город:СПб

Отправлено 25 февраля 2010 - 11:11

Спасибо, все классно, только одна беда - в 3 версии ТС нету асинхронного вызова. По крайней мере я не нашел.
Ну и FindChild тоже не нашел. Но уверен, что в семерке должно работать на ура.
  • 0

#4 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 26 февраля 2010 - 18:05

Здравствуйте.

Тогда попробуйте решение, предложенное здесь.
  • 0
С уважением,
Дмитрий


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных