Java 如何选择此按钮?
我正在使用Selenium来自动化网站的签出过程,但我不知道如何正确地选择这个特定元素。到目前为止,我已经尝试了以下所有方法,但没有成功:Java 如何选择此按钮?,java,html,selenium,Java,Html,Selenium,我正在使用Selenium来自动化网站的签出过程,但我不知道如何正确地选择这个特定元素。到目前为止,我已经尝试了以下所有方法,但没有成功: //no such element driver.findElement(By.id("Something here")).click(); //no such element driver.findElement(By.xpath("//*[@id="add-remove-buttons"]/input")).click(); //no such elem
//no such element
driver.findElement(By.id("Something here")).click();
//no such element
driver.findElement(By.xpath("//*[@id="add-remove-buttons"]/input")).click();
//no such element
driver.findElement(By.name("commit")).click();
看来我最接近的是:
driver.findElement(By.className("button")).click();
使用此选项时,会出现一个错误,表示按钮不可见。看来我正朝着正确的方向前进,但我不确定接下来该怎么办。以下是按钮的HTML源代码:
<input type="submit" name="commit" value="add to cart" class="button">
不确定这是否在其中起作用,但当单击此按钮时,它会变成一个新按钮。位置相同,但颜色、文字和功能不同
如果您想亲自查看,请访问以下网站:
我尝试单击的按钮是“添加到购物车”按钮。请尝试以下代码:
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement button = wait.until(ExpectedConditions.elementToBeClickable(By.name("commit")));
button.click();
希望它能帮助你 你能告诉我加顿在哪里吗?谢谢你!我想知道你第一次创建一个新的WebElement是否有什么特殊的原因?或者这只是因为它很容易再次访问。@CodeSoloDolo,我添加了点击操作前的特殊等待。