在量角器测试中,我有一个预先填充了值的<input type="text"/>
,我想删除该值并键入一个新值。理想情况下,我只能说出像
// Some way to select all the text in the text box so `
// sendKeys` will type over it.
element(by.css("input.myInput")).selectAll();
element(by.css("input.myInput")).sendKeys("my new value");
但是selectAll
不存在,我在API文档中找不到任何有用的东西。
有什么想法吗?
答案 0 :(得分:31)
我使用clear
在我的一个测试中执行此操作,就像魅力一样;)
element(by.css("input.myInput")).clear();
答案 1 :(得分:11)
找到它:
var ctrlA = protractor.Key.chord(protractor.Key.CONTROL, "a");
element(by.css("input.myInput")).sendKeys(ctrlA);
发送Ctrl + A,“全选”的键盘快捷键。
答案 2 :(得分:0)
与glepretre类似,我的解决方案是输入formcontrol命名为'Name',但这对我有用
newValue = getNewValue();
element(by.css('input[formControlName=Name]')).clear();
element(by.css('input[formControlName=Name]')).sendKeys(newValue)
.then(function () {....});
答案 3 :(得分:0)
双击输入,然后单击BackSpace
browser.actions().doubleClick(input).sendKeys(Key.BACK_SPACE).perform();
或双击输入并设置一个新值,它将替换先前的值
browser.actions().doubleClick(input).sendKeys('9999').perform();