1
假设我们有一个输入,并且我们想要添加一些文本。用按键模拟输入填充
<form>
First name:<br>
<input type="text" id="thename" name="firstname">
</form>
简单的事情就是用经典的element.value ...添加输入值。 但是如果我想通过模拟按键事件添加例如'David'?
我跟着几种方法是这样的:
function simulateKeyEvent(character) {
var evt = document.createEvent("KeyboardEvent");
(evt.initKeyEvent || evt.initKeyboardEvent)("keypress", true, true, window,
0, 0, 0, 0,
0, character.charCodeAt(0))
var canceled = !body.dispatchEvent(evt);
if(canceled) {
// A handler called preventDefault
alert("canceled");
} else {
// None of the handlers called preventDefault
alert("not canceled");
}
}
从here两者并阅读几乎每一个解决方案,但他们没有工作。
注:我在Firefox和Chrome