此元素存在于联系表单页面中,就像上传网址,我们需要输入图片的网址并按Enter键
我使用的代码是......使用此代码我可以将文本输入该元素但是没有按下Enter键
driver.findElement(By.xpath("//*[@id='uploading-url']/input")).sendKeys("http://www.mytabletbooksqa.com/ProductImages/test1.gif"); WebElement dropdownlists = driver.findElement(By.xpath("//*[@id='uploading-url']/input")); Actions builder=new Actions(driver); builder.clickAndHold(dropdownlists).sendKeys(dropdownlists, Keys.ENTER).release().build(); builder.perform();
该元素的HTML代码是
<div id="uploading-url">
<p class="reduce-space"><img alt="web_image" src="/images/content/duelr/web.png"></p>
<input placeholder="Enter URLs to upload from web" type="text"></div>
请指导我这里可能出现的问题。谢谢你的时间。
答案 0 :(得分:4)
以下代码可以提供帮助:
WebElement dropdownlists = driver.findElement(By.xpath("//*[@id='uploading-url']/input"));
dropdownlists.sendKeys("http://www.mytabletbooksqa.com/ProductImages/test1.gif");
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
Lemme知道这是否适合您!
答案 1 :(得分:0)
看起来你们在一起做这些事。我可能是时间的事情。我建议你把这些动作分开一点。
Actions builder=new Actions(driver);
builder.clickAndHold(dropdownlists).perform();
builder.sendKeys(Keys.ENTER).perform();
builder.release().perform();
然后逐步浏览这些内容,看看一次只能发生一次。如果它是单步执行而不是一次完成,那么我会在下拉列表和输入之间添加一个等待语句。我还删除了发送键的元素部分,因为您已经从上一个操作中获得了焦点。
答案 2 :(得分:0)
虽然使用AWT可能会在浏览器上运行,但它在无头模式下会失败。
您可以使用JDollarx库,只需编写以下内容即可触发按键和释放事件。
的SendKeys(Keys.ENTER).toBrowser();