元素不再附加到DOM - 对于Button

时间:2013-10-31 02:52:23

标签: selenium webdriver

问题 - 让“元素不再附加到DOM”

方法 - 1.检查元素是否显示在网页上 2.尝试单击元素

代码 -

System.out.println("boolean value of Confirm order is" +driver.findElement(By.id("confirmOrder")).isDisplayed());
if (driver.findElement(By.id("confirmOrder")).isDisplayed() == true) {          driver.findElement(By.id("confirmOrder")).click();
//driver.findElement(By.id("confirmOrder")).sendKeys("{Enter}");
//actions.moveToElement(driver.findElement(By.id("confirmOrder"))).build().perform();
//actions.click().perform();
System.out.println("button clicked");
}

输出 确认订单的布尔值istrue 单击按钮

尝试了几种方法,但似乎都没有。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:0)

我认为您没有使用隐式或显式等待,refer this获取更多信息,此问题提供了非常简洁的解释 ......

答案 1 :(得分:0)

在Windows 7上,使用以下代码行不会点击某些网页元素(例如按钮): - driver.findElement(By.id( “ButtonID”))上单击();

尝试使用XPath,但以前不常用。

以下是列出Windows 7问题的主题:https://code.google.com/p/selenium/issues/detail?id=6112

这是解决方法: -

WebElement element = driver.findElement(By.id("ButtonID"));
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", element);