Как установить значение ввода в режиме только для чтения - PullRequest
1 голос
/ 27 марта 2019

Изображение ниже - текстовое поле, которое я хочу отредактировать.

This is the input field.

Теперь, когда я пытаюсь сделать следующее:

c7 = driver.find_element_by_xpath("/html/body/div[@id='root']/div[@id='wrapper']/div[1]/div[@class='navbar-index']/div[@class='navbar-flex']/div[2]/div[@class='left-flex']/div[@class='modal-background-withmodal']/div[@class='modal-body']/div[@class='modal-container']/div[@class='modal-content']/div[@class='add-opportunity-modal-form']/div[@class='form-main-flex'][3]/div[@class='form-field-50'][2]/div[@class='form-input-field']/span[@class='ant-calendar-picker']/div/input[@class='ant-calendar-picker-input ant-input']")
driver.execute_script("arguments[0].value = 'Mar 31, 2019';", c7)

Это не меняет значение ввода, потому что оно в формате только для чтения.

<input readonly="" value="Mar 27, 2019" placeholder="Select date" class="ant-calendar-picker-input ant-input">

^ Это код для элемента ввода. Когда вы щелкаете по этому элементу, он открывает календарь и показывает даты, но я не хочу испытывать трудности с щелчком по дате. Я просто хочу изменить значение ввода. Есть ли способ, которым я могу это сделать?

enter image description here

Ответы [ 2 ]

1 голос
/ 27 марта 2019

Нетрудно просто нажать кнопку для нужной даты.Должно быть просто

driver.find_element_by_xpath(“//input[@value = ‘Mar 31, 2019’]”).click() 

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

0 голосов
/ 27 марта 2019

Вы можете немного "обмануть", чтобы достичь цели печатания.

Удалить атрибут readonly.

driver.execute_script("document.getElementsByClassName('ant-calendar-picker-input')[0].removeAttribute('readonly'));

И введите:

driver.find_elements_by_css_selector(".ant-calendar-picker-input").send_keys("Mar 31, 2019");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...