我正在尝试选择文本框中的所有文本以清除文本框。我使用Ctrl + A在Selenium RC独立2.20.0.jar服务器上使用以下Python 2.7代码在Windows 7上运行Firefox:
from selenium import selenium
s = selenium('remote-machine-ip', 4444, '*chrome', 'http://my-website-with-textbox')
locator = 'mylocator-of-textbox'
s.open()
s.type(locator, 'mytext')
s.focus(locator)
s.control_key_down()
s.key_down(locator, "A")
s.key_press(locator, "A")
s.key_up(locator, "A")
s.control_key_up()
# Nothing happens here... I cannot see the text getting selected...
# Nothing gets cleared here except the last char
s.key_down(locator, chr(8)) # Pressing backspace
s.key_press(locator, chr(8))
s.key_up(locator, chr(8))
有任何帮助吗? 谢谢, 阿米特
答案 0 :(得分:5)
我在WebDriver中使用clear()而没有任何麻烦......
el = self.selenium.find_element_by_name(name)
el.clear()
答案 1 :(得分:0)
在Selenium RC中,只需使用以下内容清除文本框
即可selenium.type(“someLocator”,“”);
答案 2 :(得分:0)
尝试先使用
element.click()
然后使用元素
element.clear()
它可以解决你的问题,因为它真的解决了我的问题。
答案 3 :(得分:0)
您可以这样做:
public void selectAll(WebElement element) {
String selectAll = Keys.chord(Keys.CONTROL, "a");
element.sendKeys(selectAll);
}
当您想使用它时,例如:
selectAll(myDriver.findElement(By.id("testId")));
在此示例中,WebElement可以是文本框,文本区域和类似内容。