Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否选中复选框的状态?_Java_Selenium_Selenium Webdriver_Checkbox_Getattribute - Fatal编程技术网

Java 是否选中复选框的状态?

Java 是否选中复选框的状态?,java,selenium,selenium-webdriver,checkbox,getattribute,Java,Selenium,Selenium Webdriver,Checkbox,Getattribute,我试图验证复选框的状态是否选中,如果状态为false,请单击“如果不执行其他操作”。我应该使用.getAttribute()还是.getState()。我想我应该使用get state WebElement checkbox = driver.findElement(By.name("companyOptionsForm:mandateVerificationTotals")); if (checkbox.getState() == true) { //do somet

我试图验证复选框的状态是否选中,如果状态为false,请单击“如果不执行其他操作”。我应该使用.getAttribute()还是.getState()。我想我应该使用get state

 WebElement checkbox = driver.findElement(By.name("companyOptionsForm:mandateVerificationTotals"));

     if (checkbox.getState() == true) {
      //do something
     } else if (checkbox.getState()== false) {
      //do something
     }
复选框的HTML

< input name = "companyOptionsForm:mandateVerificationTotals"
type = "checkbox"role = "checkbox"aria - checked = "true"
class = "dijitReset dijitCheckBoxInput"data - dojo - attach - point = "focusNode"
data - dojo - attach - event = "ondijitclick:_onClick"
value = "on"tabindex = "0"id = "mandateVerificationTotals"
checked = "checked" style = "user-select: none;" >


但是,当我使用.getState()时,eclipse会在其下方显示一条红线。

执行以下操作:

WebElement checkbox = driver.findElement(By.name("companyOptionsForm:mandateVerificationTotals"));

if (checkbox.isSelected()) {
  //do something
 } else  {
  //do something else
 }

这样做:

WebElement checkbox = driver.findElement(By.name("companyOptionsForm:mandateVerificationTotals"));

if (checkbox.isSelected()) {
  //do something
 } else  {
  //do something else
 }

AWT复选框有一个名为getState()的方法,但没有一个名为isSelected()的方法

Swing JCheckBox有一个名为isSelected()的方法,但没有一个名为getState()

正如@Arthur所展示的,不要将布尔值与真或假进行比较;只用
if(booleanVariable)
if(!booleanVariable)

AWT复选框有一个名为getState()的方法,但没有一个名为isSelected()的方法

Swing JCheckBox有一个名为isSelected()的方法,但没有一个名为getState()

正如@Arthur所展示的,不要将布尔值与真或假进行比较;只用
if(booleanVariable)
if(!booleanVariable)

您还可以使用
javascript
验证是否选中了复选框

public boolean isChecked(WebElement element) {
    return (boolean) ((JavascriptExecutor) driver).executeScript("return arguments[0].checked", element);
}

您还可以使用
javascript
验证是否选中了复选框

public boolean isChecked(WebElement element) {
    return (boolean) ((JavascriptExecutor) driver).executeScript("return arguments[0].checked", element);
}

是否可以使用复选框的
unchecked
checked
状态的HTML更新问题?请尝试
checkBox.isSelected()
这是相同的代码,唯一不同的是如果复选框选中=如果未选中=False,则为true是否可以使用HTML更新复选框的
unchecked
checked
状态的问题?请尝试
checkBox.isSelected()
这是相同的代码,唯一不同的是复选框是否选中=如果未选中=否我将尝试这个问题。它是布尔型的吗?nvm是布尔人,我将尝试这个问题。它是布尔型的吗?nvm是Boolean这对我来说不是很好,但上面的答案确实如此。谢谢你这对我来说不是很好,但上面的答案确实如此。非常感谢。