2015-12-10 108 views
1

我是使用Java和Selenium编写测试的初学者。 我有这个网页元素:clear()函数不会删除输入web元素的默认值

<input type="number" name="yield_target" 
placeholder="Yield Target" value="0.00" min="0" step="any"> 

但我不能清除它由:

WebElement we = wait.until(ExpectedConditions.visibilityOfElementLocated 
(By.xpath("//input[@placeholder='Yield Target']"))); 
we.clear(); 

但是,如果我用我能写进去,比如:

action.sendKeys(we, "223").build().perform(); 

它将0.00223而不是223.

+0

我想,当你明确你的领域你会请参阅占位符的文本值。它无助于清除该字段,因为它只是清除字段的值,您将看到占位符的值。如果你不想看到这个,你应该删除占位符属性。 – CyberAleks

+0

@Cyber​​Aleks你的“占位符的价值”是什么意思? – LoveJavaJavaJava

+0

@Cyber​​Aleks,DOMElement的值与其占位符属性无关。 – mfulton26

回答

0

我不知道为什么we.clear()不工作,但你可以清除和在一个单一的呼叫建立(假设JavaScript的网页上并没有阻止你使用CTRL + A选择所有的号码输入字段的内容):

we.sendKeys(Keys.chord(Keys.CONTROL, "a"), "223");