使用JavaScript函数在输入时触发Keydown(无jQuery)

时间:2018-08-16 23:44:30

标签: javascript

如何使用香草javascript模拟对输入的“向右箭头”键的按键操作?

我有一个输入和一个按钮。我希望按钮触发输入上“向右箭头”键的按下。

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

基本上,最终结果应该是:

  1. 点击按钮
  2. 光标向右移动一个位置(因为 我们触发了按下按键)

我尝试了这些解决方案,但是它们不起作用:

Is it possible to simulate key press events programmatically?

https://elgervanboxtel.nl/site/blog/simulate-keydown-event-with-javascript

1 个答案:

答案 0 :(得分:0)

有一个handy blog post,可为您提供将光标放置在文本区域中的完整信息。这是一个概念验证版本,可能不适用于较旧的浏览器(请参阅链接以获取兼容版本):

let cursorLocation = 0;

document.getElementById("myButton").addEventListener("click", e => {
  var input = document.getElementById('myInput');
  input.focus();
  input.setSelectionRange(++cursorLocation, cursorLocation);
});
<input id="myInput" type="text" value="sample text">
<button id="myButton">Click Me</button>