如何在Selenium WebDriver中點選隱藏元素?
我們可以點選Selenium webdriver中的隱藏元素。在DOM中,隱藏元素是指頁面上未顯示的元素。CSS屬性**style**應將值**display:none**設定為隱藏元素。此外,如果隱藏元素位於表單標籤內,可以透過將屬性**type**設定為**hidden**來將其隱藏。
在處理隱藏元素時,Selenium會丟擲**ElementNotVisibleException**異常。因此,可以使用JavaScript執行器來訪問和處理這些元素。**executeScript**方法用於在Selenium中執行JavaScript命令。要執行的命令作為引數傳遞給該方法。
讓我們來看一個場景,其中最初有兩個按鈕 - **隱藏**和**顯示**以及一個編輯框。單擊“隱藏”按鈕後,下面的編輯按鈕在頁面上隱藏。

單擊“隱藏”後,頁面變為:

讓我們嘗試在隱藏的編輯框中輸入一些文字。首先,我們將使用**getElementById**方法找到隱藏的編輯框,並使用**value**方法向其中輸入一些文字。
語法
executor.executeScript ("document.getElementById('id').value='QA';");示例
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.JavascriptExecutor;
public class ElementHiddenClk{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver",
"C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
driver.get("https://learn.letskodeit.com/p/practice");
// identify element
driver.findElement(By.id("hide−textbox")).click();
// Javascript executor class
JavascriptExecutor js = (JavascriptExecutor) driver;
// identify element and set value
js.executeScript
("document.getElementById('displayed−text').value='QA';");
String str = (String) js.executeScript("return document.getElementById('displayed−text').value");
System.out.print("Value entered in hidden element: " +str);
driver.close()
}
}輸出

廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP