Автор Тема: Заполнение данных в IE (Value)  (Прочитано 780 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 3653
  • Репутация: 968
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Заполнение данных в IE (Value)
« Ответ #15, Отправлен: Ноябрь 22, 2017, 16:54:48 »
Dk  [?]
Цитировать
Как заполнить
Пробуйте по второму варианту - через _UIA_ElementMouseClick и Send.

Русское сообщество AutoIt

Re: Заполнение данных в IE (Value)
« Ответ #15 Отправлен: Ноябрь 22, 2017, 16:54:48 »

Оффлайн Dk [?]

  • Новичок
  • *
  • Сообщений: 351

  • Автор темы
  • Репутация: 2
    • Награды
Re: Заполнение данных в IE (Value)
« Ответ #16, Отправлен: Ноябрь 22, 2017, 17:37:10 »
Пробуйте по второму варианту - через _UIA_ElementMouseClick и Send.

Спасибо работает.

Самый последний вопрос появился. Не знаю нужно ли открывать новую тему.
В этой анкете так же находится "проблемный" - нестандартный dropdownlist.
Вот он.

<select id="cardexpiremonth" style="background: linear-gradient(rgb(230, 230, 230) 0%, rgb(255, 255, 255) 100%) padding-box; border: 1px solid rgb(192, 192, 192); border-radius: 6px; height: 28px; line-height: 28px; margin: 0px 5px 0px 0px; color: rgb(0, 66, 118); font-size: 14px; font-weight: bold; float: none; display: inline-block; padding: 4px;"><option value="0"></option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option></select>
В нём 12 элементов (1,2,3,4,5,6 итд) из которых нужно выбрать один.
Как мне нажать на dropdownlist и  выбрать к примеру 9 ?

Онлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 3653
  • Репутация: 968
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Заполнение данных в IE (Value)
« Ответ #17, Отправлен: Ноябрь 22, 2017, 18:11:24 »
Dk  [?]
Цитировать
нестандартный dropdownlist
Тренировался, как обычно, на файле
Код: AutoIt [Выделить]
#RequireAdmin
#include <IE.au3>

$oIE = _IECreate("file:\\" & @ScriptDir & "\test.html")
$oCombo = _IEGetObjById($oIE, 'cardexpiremonth')
_IEAction($oCombo, "focus")
Send("{home}") ; очистка, если нужно
Send("11")


Оффлайн Dk [?]

  • Новичок
  • *
  • Сообщений: 351

  • Автор темы
  • Репутация: 2
    • Награды
Re: Заполнение данных в IE (Value)
« Ответ #18, Отправлен: Ноябрь 23, 2017, 11:17:13 »
Dk  [?]
Цитировать
нестандартный dropdownlist
Тренировался, как обычно, на файле

Нет. К сожалению не работает. Я же говорю в этой анкете поля ввода и dropdownlist не работают с _IEGetObjById,
Все остальные анкеты работают, но как только перехожу на заполнение кредитной карты сразу перестаёт работать. Только Ваш метод с _UIA_GetControlTypeElemen работает. Но как применить его c dropdownlist.

Русское сообщество AutoIt

Re: Заполнение данных в IE (Value)
« Ответ #18 Отправлен: Ноябрь 23, 2017, 11:17:13 »

Онлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 3653
  • Репутация: 968
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Заполнение данных в IE (Value)
« Ответ #19, Отправлен: Ноябрь 23, 2017, 12:18:27 »
Код: AutoIt [Выделить]
#include <UIAutomate.au3>

$oIE = _UIA_GetElementFromHandle(ControlGetHandle("[class:IEFrame]", "", "Internet Explorer_Server1"))

$oCombo = _UIA_GetControlTypeElement($oIE, "UIA_ComboBoxControlTypeId", "cardexpiremonth", "AutomationId")
_UIA_ElementMouseClick($oCombo)
Send("11{enter}")


Оффлайн Dk [?]

  • Новичок
  • *
  • Сообщений: 351

  • Автор темы
  • Репутация: 2
    • Награды
Re: Заполнение данных в IE (Value)
« Ответ #20, Отправлен: Ноябрь 23, 2017, 16:49:38 »
Добавил маленькую задержку до Send и заработало, а так не выбирало 11. открывался лист и сразу закрывался.
Спасибо. Всё работает.
« Последнее редактирование: Ноябрь 24, 2017, 15:51:49 от Garrett »

Оффлайн Dk [?]

  • Новичок
  • *
  • Сообщений: 351

  • Автор темы
  • Репутация: 2
    • Награды
Re: Заполнение данных в IE (Value)
« Ответ #21, Отправлен: Декабрь 01, 2017, 21:19:27 »

К сожалению на страницу добавили ещё одну кнопку после ввода этих данных.
Вот эта кнопка.
<input id="test_PaymentNextStepTop" class="mx-button mx-button-primary" name="userform" type="submit" value="Weiter zum nächsten Schritt">
Самое интересное, что после нажатия на неё я перехожу на другую станицу и там такая же кнопка которую я легко нажимаю вот этим способом.
Код: AutoIt [Выделить]
$aButtons = $oIE.document.getElementsByClassName("mx-button mx-button-primary")
For $oButton In $aButtons
   $pValue = $oButton.attributes.getNamedItem("value")
   If IsObj($pValue) Then
      If StringInStr($pValue.nodeValue, "Weiter zum n") Then
         $oButton.focus()
         Sleep(25)
         $oButton.click()
         ExitLoop
      EndIf
   EndIf
Next


Вообщем как я понял как только я перехожу на "заплатить картой". то включается какой то режим в котором "обычные" действия на AutoIt не работают.

Помогите пожалуйста нажать эту кнопку именно Вашим способом.
« Последнее редактирование: Декабрь 01, 2017, 22:04:37 от Dk »

Онлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 3653
  • Репутация: 968
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Заполнение данных в IE (Value)
« Ответ #22, Отправлен: Декабрь 01, 2017, 22:08:54 »
Код: AutoIt [Выделить]
#include <UIAutomate.au3>

$oIE = _UIA_GetElementFromHandle(ControlGetHandle("[class:IEFrame]", "", "Internet Explorer_Server1"))

$oButton = _UIA_GetControlTypeElement($oIE, "UIA_ButtonControlTypeId", "Weiter zum n", "Name", True)

; вариант 1
_UIA_ElementDoDefaultAction($oButton)

; вариант 2
; _UIA_ElementMouseClick($oButton)


Русское сообщество AutoIt

Re: Заполнение данных в IE (Value)
« Ответ #22 Отправлен: Декабрь 01, 2017, 22:08:54 »

Оффлайн Dk [?]

  • Новичок
  • *
  • Сообщений: 351

  • Автор темы
  • Репутация: 2
    • Награды
Re: Заполнение данных в IE (Value)
« Ответ #23, Отправлен: Декабрь 02, 2017, 11:21:17 »
Спасибо! Второй вариант у меня работает.

Русское сообщество AutoIt

Re: Заполнение данных в IE (Value)
« Ответ #23 Отправлен: Декабрь 02, 2017, 11:21:17 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
7 Ответов
3240 Просмотров
Последний ответ Апрель 15, 2012, 07:21:10
от madmasles
7 Ответов
3208 Просмотров
Последний ответ Апрель 22, 2012, 21:49:37
от nicotino
0 Ответов
2308 Просмотров
Последний ответ Июнь 25, 2012, 16:44:48
от admirko
0 Ответов
1348 Просмотров
Последний ответ Июнь 25, 2012, 22:58:03
от madmasles
25 Ответов
11492 Просмотров
Последний ответ Октябрь 06, 2016, 09:42:19
от mef-t
6 Ответов
2328 Просмотров
Последний ответ Октябрь 13, 2012, 21:47:44
от DarWiM
2 Ответов
2098 Просмотров
Последний ответ Март 26, 2014, 14:34:09
от Evochka Turkova
7 Ответов
1636 Просмотров
Последний ответ Сентябрь 22, 2014, 13:48:45
от vld-k
3 Ответов
1031 Просмотров
Последний ответ Январь 15, 2017, 17:57:46
от Dk
2 Ответов
256 Просмотров
Последний ответ Август 24, 2017, 21:47:08
от alegu