我正在通过其ID找到一个文本框.我需要获取文本框中已有的内容.为此我使用gettext()方法,但它返回ID值
文本框中的内容是:Santhosh
我得到的输出是= [[FirefoxDriver: firefox on XP (c0079327-7063-4908-b20a-a606b95830cb)] -> id: ctl00_ContentPlaceHolder1_txtName]
代码如下
码:
WebElement TxtBoxContent = driver.findElement(By.id(WebelementID));
TxtBoxContent.getText();
System.out.println("Printing "+TxtBoxContent);
Run Code Online (Sandbox Code Playgroud)
结果:
Printing [[FirefoxDriver: firefox on XP (c0079327-7063-4908-b20a-a606b95830cb)] -> id: ctl00_ContentPlaceHolder1_txtName]
Run Code Online (Sandbox Code Playgroud) 我想使用By.id或By.cssSelector getText().
我设法通过执行getAttribute("value")来解决我的问题,但我不明白为什么getText()不能像我期望的那样工作,我可能需要它所以所有的帮助都很感激.
这是java:
WebDriverWait wait = new WebDriverWait(driver, 10);
Boolean elementIsPresent = wait.until(ExpectedConditions.textToBePresentInElementValue(By.cssSelector("#general_service_name"),"[reg] general_service_name")); // true
//WebElement general_service_name = driver.findElement(By.cssSelector("#general_service_name"));
WebElement general_service_name = driver.findElement(By.id("general_service_name"));
// Display check
Boolean isDisplayed;
if(general_service_name.isDisplayed()) isDisplayed = new Boolean(true); else isDisplayed = false; //true
String text_empty = general_service_name.getText(); //""
String text_with_value = driver.findElement(By.id("general_service_name")).getAttribute("value"); //"[reg] general_service_name"
Run Code Online (Sandbox Code Playgroud)
和HTML:
<input id="general_service_name" type="text" value="[reg] title" name="general_service_name" style="float:left;"/>
Run Code Online (Sandbox Code Playgroud)