clear()函数不适用于类型编号的输入

时间:2015-09-01 08:30:38

标签: javascript protractor

我有量角器2.2.0。

clear()函数不适用于输入类型编号。我已经尝试了这里给出的大多数解决方案。请帮我。以下是我的代码:

element(by.model('lineup.voltage_limit')).click().clear().sendKeys(value);

我试图解决clear()的承诺,如下面的

element(by.model('lineup.voltage_limit')).click().clear().then(function(){
   element(by.model('lineup.voltage_limit')).sendKeys(value); 
});

clear()似乎没有用!它只是继续附加到输入框中的文本。

2 个答案:

答案 0 :(得分:1)

我无法使用此demo page重现问题。这是the test我用过的。

我怀疑你的输入有点特殊,并且必须始终有值。我们可以做的是使用CTRL / COMMAND + A 预先选择现有文字,这样一旦您开始发送密钥,现有文本就会被替换通过新插入:

var elm = element(by.model('lineup.voltage_limit'));
elm.click().sendKeys(protractor.Key.chord(browser.controlKey, "a"));

elm.sendKeys(value);

browser.controlKeyway to handle CTRL vs COMMAND on different platforms

作为旁注,我还会将Protractor升级到最新版本(目前为3.0版本),该版本将附带可能更好地处理您问题的新网络驱动程序。

答案 1 :(得分:1)

我实际上可以通过两次调用clear来使我的工作

numInput.clear().clear().sendKeys('7');

不确定这是否适用于所有人,但它对我有用。 alexce的答案看起来也很好。

编辑:这似乎只在某些时候起作用。我不知道为什么,也许我的输入很奇怪