We can get the entered text from a textbox in Selenium webdriver. To obtain the value attribute of an element in the html document, we have to use the getAttribute() method. Then the value is passed as a parameter to the method.
Let us consider a textbox where we entered some text and then want to get the entered text.
If we spy on the element, we will find that there is no value attribute for this element in the html code.
After entering text inside that field, we can get the entered text by using the getAttribute() method.
Example
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;
public class GetValAttribute{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","C:\\Users\\ghs6kor\\Desktop\\Java\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
String url = "https://www.tutorialspoint.com/index.htm";
driver.get(url);
driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS);
// identify element
WebElement l = driver.findElement(By.id("gsc-i-id1"));
// enter texts
l.sendKeys("Selenium");
// get value attribute with getAttribute()
String val = l.getAttribute("value");
System.out.println("Entered text is: " + val);
driver.quit()
}
}