Selenium Webdriver:在文本字段中输入文本

当我在文本字段中输入文本时,它将被删除。

这是代码:

String barcode="0000000047166"; WebElement element_enter = _driver.findElement(By.xpath("//*[@id='div-barcode']")); element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys("barcode"); 

同意Subir Kumar Sao和Faiz。

 element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys(barcode); 

我有一个案例,我将文本输入字段,之后文本将自动删除。 原来这是由于某些网站function,您必须在输入文本到字段后按Enter键。 因此,在使用sendKeys方法发送条形码文本后,请在其后直接发送“enter”。 请注意,您必须导入selenium Keys类。 请参阅下面的代码。

 import org.openqa.selenium.Keys; String barcode="0000000047166"; WebElement element_enter = driver.findElement(By.xpath("//*[@id='div-barcode']")); element_enter.findElement(By.xpath("your xpath")).sendKeys(barcode); element_enter.sendKeys(Keys.RETURN); // this will result in the return key being pressed upon the text field 

我希望它有帮助..

使用此代码。

 driver.FindElement(By.XPath(".//[@id='header']/div/div[3]/div/form/input[1]")).SendKeys("25025"); 

可能是JavaScript检查某些有效条件。
您可以根据自己的要求执行两项操作:

  1. 要么检查文本框中的有效字符串输入。
  2. 或者在该文本框中设置一个循环以输入值,直到您发布表单/请求。
 String barcode="0000000047166"; WebElement strLocator = driver.findElement(By.xpath("//*[@id='div-barcode']")); strLocator.sendKeys(barcode);