gpt4 book ai didi

javascript - Chrome : Simulate keypress events on input text field using javascript

转载 作者:数据小太阳 更新时间:2023-10-29 04:57:53 25 4
gpt4 key购买 nike

stack overflow 中有很多关于此的内容,但似乎没有一个适合我的情况。我有一个输入文本字段,我想模拟按键事件来填充文本字段。

原因: 我在不提供 API 的网络界面上自动执行大量数据输入任务。使用 .value 更改输入字段不会触发界面的 JS 端( Angular )。这就是为什么我要模拟按键事件。

首先我尝试了这个:

var inp = document.getElementById('rule-type');
inp.dispatchEvent(new KeyboardEvent('keypress',{'key':'a'}));

然后我了解到在 Chrome 中 keycode 保持为 0 并且在 KeyBoardEvent 中不会改变。

所以我创建了单独的事件 ev = new KeyboardEvent('keypress',{'key':'a', 'code': 'KeyA'})

然后我再次发送,返回语句为 true 但它不会更改输入字段。

解决方案需要使用纯 javascript 而不是 jQuery。

最佳答案

您将无法触发导致文本填充输入的事件。请参阅 MDN 中的此片段:

Note: manually firing an event does not generate the default action associated with that event. For example, manually firing a key event does not cause that letter to appear in a focused text input. In the case of UI events, this is important for security reasons, as it prevents scripts from simulating user actions that interact with the browser itself.

谢谢 @gforce301

您最好的选择可能是设置该值,然后然后调度一个事件。

关于javascript - Chrome : Simulate keypress events on input text field using javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50219800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com