powershell - флажок IE не распознается - PullRequest
0 голосов
/ 04 июля 2018

Недавно я создал сценарий powershell для одной из наших систем мониторинга, который автоматизирует загрузку веб-страницы, выполняет вход с учетными данными пользователя и отправляет учетные данные для загрузки страницы панели инструментов.

После проверки учетных данных и загрузки страницы панели мониторинга появляется флажок «сеанс автоматического продления» (время ожидания по умолчанию после 30 минут бездействия).

Я также попытался автоматизировать проверку флажка. Из того, что я вижу, проверка успешно применяется, когда я получаю статус элемента, проверенное значение отображается как «True» - однако через 30 минут система автоматически выходит из системы. Если я поставлю галочку на этот флажок вручную, он будет работать без перерыва после 30 минут.

Я использую IE11 в Windows 7 x86.

Кто-нибудь когда-нибудь сталкивался с этим раньше?

часть скрипта powershell, которая применяет проверку: $varHEAchk = $ie.Document.getElementByID("extend-session-checkbox").checked = $true

После этого я проверил элемент, и он действительно сообщает:

проверено: True

часть HTML-кода флажка:

<input id="extend-session-checkbox" style="margin: -2px 4px 0px 0px;" type="checkbox" />

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 04 июля 2018

Я думаю, что вам нужно установить проверяемый атрибут на строковое значение checked вместо логического $true

$ie.Document.getElementByID("extend-session-checkbox").checked = "checked"

Чтобы узнать, установлен ли флажок, вы можете использовать

if($ie.Document.getElementByID("extend-session-checkbox").checked)

Вы также можете установить флажок по умолчанию:

<input id="extend-session-checkbox" style="margin: -2px 4px 0px 0px;" type="checkbox" checked />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...