I ran into a little issue today while validating some input fields in our application.
Looks like we can't call the selenium java method clear()
to clear the input and I know I can iterate over the string and use sendKeys(Keys.Backspace)
but clear
method should do the work?
Anyone else ran into the same issue and how did you work around this problem.?
Our app is built upon Ant libraries
Selenium
String hotmarketNameEdit = "ant-input";
WebElement edit = driver.findElement(By.className(hotmarketNameEdit));
edit.click();
edit.clear();
HTML
<input type="text" id="label" class="ant-input ant-input-sm" value="AUTOMATION TEST - Thu Oct 21 09:54:15 MDT 2021" xpath="1">
Thanks for any inputs
CodePudding user response:
I've personally come across this issue quite a few times, that Selenium .clear()
method does not work properly.
Selenium community is aware of this issue, please see the bug reported here - ClearText does not work
You can go through the above-mentioned link.
Workaround :
Majority of time, I try to simulate Ctrl A
to select the text
and just press delete after that.
If You are using Java as a binding language, You can do the following
webElement.sendKeys(Keys.CONTROL "a")
webElement.sendKeys(Keys.DELETE)
CodePudding user response:
have you tried JavaScriptExecutor?
JavascriptExecutor jse = (JavascriptExecutor) indexWebDriver;
jse.executeScript("arguments[0].value=''",edit);
check this one also
How can I consistently remove the default text from an input element with Selenium?