Selenium Webdriver: Entering text into text field

前端 未结 4 1718
遇见更好的自我
遇见更好的自我 2020-12-03 16:45

When I enter text into the text field it gets removed.

Here is the code:

String barcode=\"0000000047166\";

WebElement element_enter = _driver.findEl         


        
相关标签:
4条回答
  • 2020-12-03 17:14

    I had a case where I was entering text into a field after which the text would be removed automatically. Turned out it was due to some site functionality where you had to press the enter key after entering the text into the field. So, after sending your barcode text with sendKeys method, send 'enter' directly after it. Note that you will have to import the selenium Keys class. See my code below.

    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
    

    I hope it helps..

    0 讨论(0)
  • 2020-12-03 17:24

    Agree with Subir Kumar Sao and Faiz.

    element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys(barcode);
    
    0 讨论(0)
  • 2020-12-03 17:24

    It might be the JavaScript check for some valid condition.
    Two things you can perform a/c to your requirements:

    1. either check for the valid string-input in the text-box.
    2. or set a loop against that text box to enter the value until you post the form/request.
    String barcode="0000000047166";
    
    WebElement strLocator = driver.findElement(By.xpath("//*[@id='div-barcode']"));
    strLocator.sendKeys(barcode);
    
    0 讨论(0)
  • 2020-12-03 17:35

    Use this code.

    driver.FindElement(By.XPath(".//[@id='header']/div/div[3]/div/form/input[1]")).SendKeys("25025");
    
    0 讨论(0)
提交回复
热议问题