39

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

这是代码:

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");
4

4 回答 4

38

同意 Subir Kumar Sao 和 Faiz 的观点。

element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys(barcode);
于 2013-10-03T04:32:25.500 回答
10

我有一个案例,我在一个字段中输入文本,之后文本将被自动删除。原来这是由于某些网站功能,您必须在将文本输入字段后按回车键。因此,在使用 sendKeys 方法发送您的条形码文本后,直接在其后发送“输入”。请注意,您必须导入 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

我希望它有帮助..

于 2013-10-03T10:49:39.110 回答
4

使用此代码。

driver.FindElement(By.XPath(".//[@id='header']/div/div[3]/div/form/input[1]")).SendKeys("25025");
于 2014-02-28T12:38:41.970 回答
1

它可能是 JavaScript 检查某些有效条件。
您可以根据您的要求执行两件事:

  1. 要么检查文本框中的有效字符串输入。
  2. 或针对该文本框设置循环以输入值,直到您发布表单/请求。
String barcode="0000000047166";

WebElement strLocator = driver.findElement(By.xpath("//*[@id='div-barcode']"));
strLocator.sendKeys(barcode);
于 2014-10-15T20:17:47.420 回答