我尝试过这个:
browser.actions().keyDown(protractor.Key.ENTER).keyUp(protractor.Key.Enter).perform();
导致错误的原因是:
Error: Not a modifier key
我尝试过这个:
browser.actions().keyDown(protractor.Key.ENTER).keyUp(protractor.Key.Enter).perform();
导致错误的原因是:
Error: Not a modifier key
在WebDriver中,Keyup/Keydown仅限于修饰键(shift,ctrl等)。我认为你想要:
browser.actions().sendKeys(protractor.Key.ENTER).perform();
ptor.findElement(protractor.By.model("historyItem")).sendKeys("test5\n");
它实际上是有效的。虽然我确定这不是官方的做法,但它是否真的做到了我想要的效果? - bodinebrowser.actions().sendKeys(protractor.Key.ENTER).perform();
- Charlesliamactions()函数不是必需的。
您可以像这样做:
var input = $('#someInput');
input.sendKeys(protractor.Key.ENTER);
更新: 一些人抱怨说您未将回车发送给浏览器。如果您想要这样做,只需更改选择器即可:
driver.find_element_by_xpath("your xpath").send_keys(Keys.RETURN)
$('body').sendKeys(protractor.Key.ENTER);
.sendKeys()
时,无需调用perform
。 - DarthOpto这里有另外一种做法
var enter = browser.actions().sendKeys(protractor.Key.ENTER);
enter.perform();
从这里的文档中...
http://appfigures.github.io/webdriver-js-api-reference/symbols/webdriver.WebElement.html#sendKeys
var myInput = element(by.model('myModel.inputName'));
myInput.sendKeys(value, protractor.Key.ENTER);
还有来自上面链接文档的其他示例。
myInput.sendKeys("text was",
protractor.Key.CONTROL, "a", protractor.Key.NULL,
"now text is");
// Alternatively:
myInput.sendKeys("text was",
protractor.Key.chord(protractor.Key.CONTROL, "a"),
"now text is");
sleep()
,无法执行 Enter 点击操作。const someInput = $('#someInput');
someInput.sendKeys('test text');
browser.sleep(1000);
someInput.sendKeys(protractor.Key.ENTER);
这将很好地运作,尝试一下吧。
browser.actions().sendKeys(protractor.Key.ENTER).perform();
ptor.actions().sendKeys(protractor.Key.ENTER)
吗? - JB Nizetptor
是browser
--browser.actions().sendKeys( protractor.Key.ENTER ).perform();
。(注:由于代码片段中涉及特殊术语和符号,为了保持原意和精准性,在翻译过程中没有进行通俗易懂化处理。) - Lee Goddard