无法在锚元素上执行回车键
Unable to perform enter key on anchor element
Java 版本:7,Selenium 版本:2.45
我无法使用 sendKeys 方法在 link(锚标记)上执行 ENTER。
第 1 步:使用 sendKeys
方法执行 TAB
(有效)。表示link有焦点。我可以在键盘上手动按下 ENTER
,它会触发 link.
步骤 2:使用 sendKeys
方法执行 ENTER
(或 RETURN
)(不起作用)。
我试过:
- 在
ENTER
之前添加 thread.sleep
。
- 在
ENTER
之前添加 webDriver.wait
。
- 使用
webDriver.switchTo().activeElement()
检索活动元素,然后执行我的 ENTER
操作。请注意,使用相同的方法,我可以对元素执行 click
,而不是 ENTER
.
- 尝试了不同的方式来发送键(使用
Actions
对象,将键直接发送到元素)。
注意:
当 wait
(发送我的 ENTER
之前)发生时,选择 - Link。
- 用另一个
TAB
替换我的 ENTER
聚焦正确的元素。
- 在每次
sendKeys
调用之后,我让网络驱动程序等待任何 ajax 调用和类似的事情。所以这不是问题。
感谢所有 help/tips。谢谢!
P.S:不用说,我已经浏览了所有关于此的其他 SO 帖子。
下面的方法呢
Actions a=new Actions(driver);
a.moveToElement(driver.findElement(By.name("yourlocator"))).build().perform();
Keyboard h=((HasInputDevices)driver).getKeyboard();
h.pressKey(Keys.ENTER);
h.releaseKey(Keys.ENTER);
谢谢,
穆拉利
好不好请评论。如有不妥之处请多多指教,提高自我。
已将 Chrome 从版本 40.X 更新到版本 43.0.2357.65-1。
错误现已修复。
Java 版本:7,Selenium 版本:2.45
我无法使用 sendKeys 方法在 link(锚标记)上执行 ENTER。
第 1 步:使用 sendKeys
方法执行 TAB
(有效)。表示link有焦点。我可以在键盘上手动按下 ENTER
,它会触发 link.
步骤 2:使用 sendKeys
方法执行 ENTER
(或 RETURN
)(不起作用)。
我试过:
- 在
ENTER
之前添加thread.sleep
。 - 在
ENTER
之前添加webDriver.wait
。 - 使用
webDriver.switchTo().activeElement()
检索活动元素,然后执行我的ENTER
操作。请注意,使用相同的方法,我可以对元素执行click
,而不是ENTER
. - 尝试了不同的方式来发送键(使用
Actions
对象,将键直接发送到元素)。
注意:
-
当
- Link。
- 用另一个
TAB
替换我的ENTER
聚焦正确的元素。 - 在每次
sendKeys
调用之后,我让网络驱动程序等待任何 ajax 调用和类似的事情。所以这不是问题。
wait
(发送我的 ENTER
之前)发生时,选择 感谢所有 help/tips。谢谢! P.S:不用说,我已经浏览了所有关于此的其他 SO 帖子。
下面的方法呢
Actions a=new Actions(driver);
a.moveToElement(driver.findElement(By.name("yourlocator"))).build().perform();
Keyboard h=((HasInputDevices)driver).getKeyboard();
h.pressKey(Keys.ENTER);
h.releaseKey(Keys.ENTER);
谢谢, 穆拉利
好不好请评论。如有不妥之处请多多指教,提高自我。
已将 Chrome 从版本 40.X 更新到版本 43.0.2357.65-1。
错误现已修复。