在input元素中设置值:
WebElement input = ...
input.sendKeys("1234989");
有时,输入元素只有“1”而不是“1234989”,这里有任何竞争条件吗?
其他方式:
Actions actions = new Actions(driver);
actions.sendKeys(input, "1234989").build().perform();
这个似乎更好。有什么不同?
所需元素的相关HTML将帮助我们调试为什么仅使用1而不是1234989填充所需元素。但是根据最佳实践,在将字符序列发送到input
字段时,您应始终将qdxswpoi的WebDriverWait引入为如下:
elementToBeClickable()
您可以在以下网址找到几个相关的讨论:
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("css_input_element"))).sendKeys("1234989");
sendKeys(WebElement target, java.lang.CharSequence... keys)
来自sendKeys(WebElement target, java.lang.CharSequence... keys)类,相当于调用Actions
。这种方法与Actions.click(element).sendKeys(keysToSend)
不同。
WebElement.sendKeys(CharSequence...)
public Actions sendKeys(java.lang.CharSequence... keys)
向活动元素发送CharSequence。同样,这与在两个方面调用活动元素上的public Actions sendKeys(java.lang.CharSequence... keys)
不同:
WebElement.sendKeys(CharSequence...)
应该可以工作。你可以在sendKeys(Keys.TAB)
找到详细的讨论