首页 > 解决方案 > 模拟按键进入输入字段(Javascript)

问题描述

我想将按键模拟到 INPUT 对象中。

由于字段的处理方式,我不能只设置元素值。

看起来解决方案与dispatchEvent和有关KeyboardEvent- 但是有很多变体并且大多数已被弃用。

当前将可打印字符发送到 INPUT 字段的现代方式是什么。

标签: javascriptkeyboard-eventsdispatchevent

解决方案


如果你想模拟一个keypress事件,你必须这样做:

var evt = new KeyboardEvent('keypress', { key: "a" });

input.dispatchEvent(evt);

正如您所说,keypress事件已被弃用,并且不保证将来会起作用。建议使用beforeinputorkeydown代替。

即便如此,对的支持keypress仍然很好,正如您在此处看到的那样。


推荐阅读