Селен - не можете нажать и открыть календарь на странице? - PullRequest
0 голосов
/ 12 февраля 2020

Я пытаюсь выбрать дату, нажав ниже. Однако, когда я пытаюсь найти element и click, я не получаю ошибок, но календарь на странице не открывается.

Я не могу понять, что я делаю здесь неправильно или есть способ непосредственно ввести дату?


                <div class="was-bold-text">To</div>
                <div class="was-date-container was-light-text" data-displaydate="End Date">
    <input name="" value="" id="was-returns-reconciliation-report-end-date" type="date" class="was-form-control was-input-date" data-defaultdate="" data-mindate="" data-maxdate="today" data-placeholder="End Date" max="2020-02-12" min="2020-02-04">

</div>

Я пытался:

driver.find_element_by_id('was-returns-reconciliation-report-end-date').click()
# No error thrown but the calender view doesn't open either.

driver.find_element_by_class_name('was-date-container').click()
# No error thrown but the calender view doesn't open either.

Как можно выбрать дату или открыть календарь и щелкнуть нужную дату?

TIA

Ответы [ 2 ]

0 голосов
/ 12 февраля 2020

Вам не нужно нажимать на средство выбора даты, потому что это собственный элемент ввода, а не плагин, такой как datepicker или datetimepicker. Но вы можете установить значение следующим методом:

datepicker = driver.find_element_by_id('was-returns-reconciliation-report-end-date')
datepicker.clear() # clear values if any.
datepicker.send_keys("02/12/2020")

Я думаю, что это будет работать для вас.

0 голосов
/ 12 февраля 2020

Возникла та же проблема некоторое время go и решена путем установки значения datePicker на javascript. Это не тот щелчок, который вы ищете, но он может работать для вашей проблемы в C# примерно так:

((IJavaScriptExecutor)driver).ExecuteScript("document.getElementById('was-returns-reconciliation-report-end-date').value='2020-01-05'");

Так что в python было бы так, я думаю, может быть какая-то синтаксическая ошибка:

driver.execute_script("document.getElementById('was-returns-reconciliation-report-end-date').value = '2020-01-05'")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...