如何使用Selenium和Python更改日期选择器的值



table元素中,我有以下内容作为日期选择器:

<input name="tb_date" type="text" value="2020-07-15" onchange="javascript:setTimeout('__doPostBack('tb_date','')', 0)" onkeypress="if (WebForm_TextBoxKeyHandler(event) == false) return false;" id="tb_date" class="align-center" style="font-size:14pt;width:120px;">

我可以得到如下输入元素:

date_element = driver.find_element_by_name('tb_date')

那很好。但是,当我尝试更改此元素的值时,它似乎附加到当前值。

date_element.send_keys('2020-07-01')
date_element.click()

因此,日期选择器的值为'2020-07-152020-07-01'

如何删除value属性并输入新属性?

尝试使用.execute_script:

date_element = driver.find_element_by_name('tb_date')
driver.execute_script("arguments[0].value = '2020-07-01';", date_element)

您可以清除并向该字段发送密钥。

date_element.clear();
date_element.send_keys('2020-07-01')
date_element.click();

最新更新