在Vanilla JS中调度/生成keydown事件(不使用jQuery,请使用Vanilla JS)

时间:2018-08-14 12:56:34

标签: javascript

如何使用香草javascript 模拟输入的按键?

我已经在SO和其他地方测试了所有可能的答案,但它在Chrome或Firefox上不起作用。

例如,假设我们有一个表单:

<input id="myInput" type="text">
<button id="myButton>Click Me</button>

我如何做到这一点,以便在单击按钮时将字母“ a”添加到输入中?

2 个答案:

答案 0 :(得分:2)

首先要向document对象添加一个keyup事件侦听器,然后在回调中通过value分配输入值,具体取决于按下哪个键:

var input = document.getElementById("myInput");

document.addEventListener('keyup', function(e) {
  if (e.which === 39 || e.which === 19) {
    input.value += 'a';
  }
});
<input id="myInput" type="text" />

<button id="myButton">Click Me</button>

答案 1 :(得分:0)

这种方式我认为:

<html>
<body>

<input type="text" id="myText" placeholder=" ">

<button id="but1" onclick="myFunctionA()">A</button>
<button id="but2" onclick="myFunctionB()">B</button>

<script>
  function myFunctionA() {
  document.getElementById("myText").placeholder = document.getElementById("myText").placeholder + "A";
}

function myFunctionB() {
  document.getElementById("myText").placeholder = document.getElementById("myText").placeholder + "B";
}

//And so on 

</script>

</body>
</html>

任何怀疑都告诉我