我正在尝试将一些Text设置到TextArea中,默认情况下它有一些文本,当点击清除然后你可以设置文本,但是我可以使用webdriver执行它的java。
这是TextArea的代码片段:
<textarea id="gwt-uid-13" class="v-textarea v-widget v-textarea-required v-required v-has-width v-textarea-prompt" aria-labelledby="gwt-uid-12" aria-required="true" rows="5" tabindex="0" style="width: 600px;" maxlength="4000"/>
这是我到目前为止所尝试的内容: element是TextArea控件本身:
element= driver.findElement(By.id("gwt-uid-13"))
element.clear();
element.sendKeys("Modification Comment TextArea");
另外,我尝试先点击元素,
element.click();
element.clear();
element.sendKeys("Modification Comment TextArea");
请查看附带的图片以获取更多信息:
谢谢
答案 0 :(得分:1)
这对我有用(通过反复试验了解) - 而不是先执行click(),我尝试发送TAB并清除值。
element.sendKeys(Keys.TAB);
element.clear();
element.sendKeys("Some Sample Text Here");
由于
答案 1 :(得分:0)
我利用了javascript执行器。
org.openqa.selenium.JavascriptExecutor.executeScript(String,Object ...)
改为:
string in list
答案 2 :(得分:0)
当文本很长时,SendKeys 可能会超时、耗时或不稳定。那么可能有效的是将文本复制到剪贴板,然后将 OpenQA.Selenium.Keys.Control + "v"
发送到文本区域元素。
这种方法的一个缺点是您将需要 Java 中的 awt 或 Swing,或 C# 中的 System.Windows 或 System.Windows.Forms。