【问题标题】:selenium unable to set input for a input box which becomes select box on focusselenium 无法为成为焦点选择框的输入框设置输入
【发布时间】:2019-10-16 14:47:43
【问题描述】:

我有一个网页,其中有一个文本输入框,点击后会变成一个选择框。选择的项目出现在表格中。即,一个表被用作选择输入而不是选项标签 我能够使用 xpath 获取每个表 td 的值。但是我无法选择select中的选项。

点击输入时,它会变成选择框,我也可以在其中使用向上或向下箭头键进行导航。

browser.find_element_by_xpath("//*[@id='not-tbl']/tbody/tr[1]/td").click()
print(browser.find_element_by_xpath("//*[@id='not-tbl']/tbody/tr[1]/td").get_attribute("innerHTML"))

输入框的Xpath://*[@id="not_cat"] 选择的 HTML:

<input id="not_cat" value="" readonly="" ct="ComboBox" k="" ks="" lid="notification_in_category-lb" op="false" st="" vt="true" dd="true" ic="6" vs="" tabindex="0" ti="0" class="urCoB2TxtDdl" onfocus="sapUrMapi_ComboBox_focusDdlb('notification_in_category',event);" onblur="sapUrMapi_ComboBox_blurDdlb('notification_in_category',event);" onkeydown="sapUrMapi_ComboBox_keydown('notification_in_category',event);" onkeypress="sapUrMapi_ComboBox_keypress('notification_in_category',event);" onselectstart="sapUrMapi_cancelEvent(event);" style="width:119;" noblur="false" ll="false">

如何将此表 td 值添加到输入中。手动执行 sendkeys 不起作用。一旦输入框获得焦点,它就会变成一个选择框。

【问题讨论】:

  • 你能发布选择输入的HTML吗?
  • 这是一个有趣的案例——有什么方法可以链接到您正在测试的页面?这将允许我测试不同的方法。
  • @GregBurghardt 完成
  • @Christine,对不起,这是一个内部网站,只能从公司网络访问
  • 你能把这个输入变成的东西的 HTML 贴出来吗?是桌子吗?你能把那个 HTML 贴出来吗?

标签: python selenium xpath selenium-chromedriver


【解决方案1】:

我自己找到了解决办法。

我先单击了一次,然后延迟了一个,以便填充选择。然后我用了方向键。

browser.find_element_by_id("not_cat").click()
time.sleep(3)
browser.find_element_by_id("not_cat").send_keys(Keys.DOWN * 4)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    相关资源
    最近更新 更多