【发布时间】:2020-10-01 21:17:23
【问题描述】:
考虑一下这个简单的 html。
<div role="label">
<label>Names</label>
</div>
<div role="input">
<input type="names">
</div>
我有这样的代码
WebElement input= "inputXpathString";
input.sendKeys("Sam Winchester")
这会发送正确的名称,但是当名称被发送到输入框时,会显示一个下拉列表来显示名称。我如何处理下拉菜单?
我试过input.sendKeys(Down, Return) 它不起作用。我也试过,点击页面上的任何地方,也没有帮助。
我还能做什么?
【问题讨论】:
-
也许尝试发送键输入。还有它是什么网站。
-
我已经试过
input.sendKeys(Down, Return)不能分享网站。它的内部。 -
下拉是如何实现的?尝试使用 input.click() 点击。
-
听起来这是浏览器自己的控件。 (自动建议)这不是 DOM 的一部分,因此 Selenium 无权访问它。 (其他网站也没有,这是一件好事。这使“沙箱”保持完整。)发送密钥可能有效......不确定......似乎他们会阻止,但你可以尝试 input.sendKeys(Keys .ARROW_DOWN) 和 input.sendKeys(Keys.ENTER) 如果网站实现了自己的自动提示,它将在 DOM 中。