簡體   English   中英

不使用.click()選中Selenium Java-mark復選框

[英]Selenium Java - mark checkbox selected without using .click()

我想將某些復選框標記為使用Selenium和Java選中,但是在.css樣式表中,它們的“寬度”和“高度”設置為“ 100”,但是在瀏覽器中它們卻顯示為普通復選框。 因此,硒找到了它們並成功執行了.click()函數,但是未選中該復選框。 有沒有一種方法可以簡單地將復選框設置為選中狀態而不使用.click()?

沒有可復制的樣本很難說,但您可以嘗試通過javascript單擊

WebElement checkbox = driver.findElement(By.ID("mycheckbox"));

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", checkbox);

看到這里的區別:

恐怕復選框上沒有select()方法,但是您可以編寫像這樣的東西並重用它..這將抽象select的操作

if ( !driver.findElement(By.id("idOfTheElement")).isSelected() )
{
    driver.findElement(By.id("idOfTheElement")).click();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM