Excel VBA добавить значение в поле ввода на странице IE - PullRequest
0 голосов
/ 14 мая 2018

Первый раз попробую это.

У меня есть следующее HTML на веб-странице, и я использую Excel и VBA для очистки данных.

<div class="program-filters">
   <span>Search for&nbsp;</span>
   <a>
      any gender&nbsp;<img src="/site/images/svg/DownArrow.svg" alt="Down Arrow" class="down-arrow-icon">
   </a>
   <span class="xs-hide">,</span>
   <br class="sm-hide md-hide lg-hide">
   <a>
      all ages&nbsp;<img src="/site/image/svg/DownArrow.svg" alt="Down Arrow" class="down-arrow-icon">
   </a>
   to
   <a>
      play&nbsp;<img src="/site/images/svg/DownArrow.svg" alt="Down Arrow" class="down-arrow-icon">
   </a>
   <br class="sm-hide md-hide lg-hide">&nbsp;near&nbsp;
   <div style="display: inline-block;">
    <input role="combobox" aria-autocomplete="list" autocomplete="off" value="SEARCH VALUE HERE">
   </div>
   <a class="in-map-btn btn btn-primary btn-go btn-mobile-fixed">GO</a>
</div>

Как настроить таргетинг на input role="combobox" каку него нет идентификатора или класса.С jQuery я бы нашел этот ввод внутри div class="program-filters".

Спасибо

1 Ответ

0 голосов
/ 14 мая 2018

Предполагая, что у вас уже есть HTML-документ для работы, вы можете сделать это следующим образом:

myHTMLDoc.GetElementsbyTagName("INPUT")(0).value = myValue

Это будет работать, если это всегда первое поле ввода на этой странице.При нажатии на кнопку для отправки заполненных полей ввода иногда требуется изменить класс поля ввода, чтобы эмулировать изменение, которое происходит, когда это поле заполняется вручную, в противном случае проверка JS сочтет поле пустым.

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