使用 Selenium webdriver,我尝试单击复选框但无法执行此操作,即使显示该元素也是如此。
下面是我的代码:
WebElement element =
new WebDriverWait(webDriver, 1000).until(ExpectedConditions.presenceOfElementLocated(By.xpath(prop.getProperty(object))));
element.isDisplayed(); // returns true
element.getAttribute("type"); // returns checkbox
element.isSelected(); // returns false
element.click();
element.isSelected(); // still returns false
元素已显示,但我仍然无法选中该复选框。 可能是什么原因?我哪里错了?
最佳答案
您可以尝试移动到复选框然后单击:
Actions actions = new Actions(driver);
actions.moveToElement(element).click().build().perform();
或者,通过 JavaScript 进行点击:
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", element);
但是,请确保您了解必须这样做的原因:WebDriver click() vs JavaScript click()
关于java - 即使显示复选框,单击复选框也无法使用 Selenium webdriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34948210/