Как нажать кнопку IE с похожими именами и атрибутами классов - PullRequest
0 голосов
/ 27 июня 2019

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

<button ng-repeat="punch in $ctrl.nextPunches" ng-disabled="punch.sendingPunch || $ctrl.sendingPunch" type="button" class="btn btn-default ng-binding ng-scope" ng-click="$ctrl.addPunch(punch)" style="">
                        <!-- ngIf: punch.sendingPunch -->
                        Check In
                    </button>

================================================================================

<button ng-repeat="punch in $ctrl.nextPunches" ng-disabled="punch.sendingPunch || $ctrl.sendingPunch" type="button" class="btn btn-default ng-binding ng-scope" ng-click="$ctrl.addPunch(punch)">
                        <!-- ngIf: punch.sendingPunch -->
                        Start Meal
                    </button>

===============================================================================

<button ng-repeat="punch in $ctrl.nextPunches" ng-disabled="punch.sendingPunch || $ctrl.sendingPunch" type="button" class="btn btn-default ng-binding ng-scope" ng-click="$ctrl.addPunch(punch)">
                        <!-- ngIf: punch.sendingPunch -->
                        Check Out
                    </button>

Я пытался использовать это:

Set HTMLButtons = HTMLDoc.getElementsByTagName("button")
    For Each HTMLbutton In HTMLButtons
       Debug.Print HTMLbutton.getAttribute("ng-click"), HTMLbutton.getAttribute("type"), HTMLbutton.getAttribute("ng-repeat"), HTMLbutton.getAttribute("ng-disabled")
    Next HTMLbutton
    HTMLButtons(2).Click

Однако кнопки, отображаемые в непосредственном окне, бесполезны и не нажимают никакие кнопки, когда я использую команду .Click.Эти кнопки находятся под элементом пользовательского интерфейса на веб-странице.Я не уверен, что это полезно, но я определенно могу предоставить больше кода веб-страницы, если это необходимо.

Спасибо!

1 Ответ

1 голос
/ 27 июня 2019

Вы можете использовать метод document.getElementsByClassName или метод document.getElementsByTagName, чтобы получить кнопку (она будет возвращать массив), а затем выполнить цикл по этому массиву и различать их на основе свойства innerText . Более подробно вы можете проверить эту статью .

Кроме того, вы также можете добавить некоторые пользовательские атрибуты и задать другое значение, а затем использовать его для их различения.

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