我在页面上有一个ExtJs文本字段。我在casper.js中填充它的一些值,这很好用。
然后,我想将焦点放在此字段上并按Enter键,因为周围没有<form>
可提交。
我尝试过的是:
casper.then(function() {
// the text field is filled with the string
this.sendKeys('#searchfield', 'some text');
this.evaluate(function() {
// this does not put the field in focus
document.querySelector('#searchfield').focus();
// so 'pressing' enter has no effect at all
var evt = document.createEvent('KeyboardEvent');
evt.initKeyboardEvent('keypress', true, true, window, 0, 0, 0, 0, 0, 13);
document.dispatchEvent(evt);
});
});
你有什么想法来完成这个任务吗?
viewArg
,通常只是window
对象。不幸的是,将其更改为我的元素并没有改变任何东西。它只是没有被按下。 - dan-lee\n
来发送回车键,请尝试这个this.sendKeys('#searchfield', 'some text\n');
。 - Flying Fisher