我无法使用WebClient / HtmlUnit / Java更改textarea中的文本。我试着谷歌,但没有运气。有人可以帮忙吗?有源代码:
WebDriver driver = new HtmlUnitDriver();
driver.get("http://some_site.com");
driver.findElement(By.id("niEditor")).sendKeys("some value");
String test = findElement(By.id("niEditor")).getText(); // no changes
和html中的标签:
<textarea class="tinyMCE newitem2" id="niEditor" name="description"> MANY TEXT </textarea>
答案 0 :(得分:1)
我这样做的方式(对我有用)
driver.findElement(By.id("niEditor")).clear();
driver.findElement(By.id("niEditor").sendKeys("data");
第一行代码实际上将焦点转移到可能导致问题的文本区域。试试这段代码,告诉我们它是否有效。
答案 1 :(得分:0)
要获取文本,请使用以下命令:
String test = driver.FindElement(By.Id("niEditor")).GetAttribute("value");
这是用C#编写的,但在Java中应该有一个等价物
答案 2 :(得分:0)
如果清除和发送密钥没有帮助:
webdriver.findElement(<locator of previous element>).sendKeys(Keys.TAB, Keys.chord(Keys.COMMAND, "a"), "This text will replace text in textarea");