模拟“ENTER”按键,就像人类在网站上点击一样[重复]

Posted

技术标签:

【中文标题】模拟“ENTER”按键,就像人类在网站上点击一样[重复]【英文标题】:Simulate 'ENTER' Key Press Like Human Hit On Website [duplicate] 【发布时间】:2014-11-14 19:45:12 【问题描述】:

javascript/JQuery 中可以吗?

我的网站上有一个按钮,当有人单击该按钮时,我需要模拟人工按键“Enter”。

示例: 我点击按钮,然后它自动按下回车键。

【问题讨论】:

谁将此标记为重复?问题完全不同。 【参考方案1】:

我从this answer中的代码修改了这段代码,

var onclick = function()
    var e = $.Event('keypress');
    e.which = 13; // Character 'A'
    $(this).trigger(e);
;

$('button').click(onclick);

您要定义一个按键事件,将其定义为 Enter (13) 按键,并触发它onclick

编辑新问题: keypress、keydown 和 keyup 事件实际上并不输入任何内容,它们仅用于触发事件绑定。如果需要,还必须添加输入。此行将键码转换回字符串并将其附加到当前值。

$("#test").val($("#test").val()+String.fromCharCode(e.which));

Updated JsFiddle

我还包含了两行注释掉的代码,它们显示了以编程方式提交表单的两种方式。

$('#submit').click();

$('#myForm').submit();

【讨论】:

它不起作用。见:jsfiddle.net/3xTM2/462点击后没有控制台日志 @riko10 您错过了 id 选择器的标签。我将 $('test') 更改为 $('#test') > jsfiddle.net/3xTM2/464 点击提交后我想在输入表单上模拟点击'a'键(65)。见:jsfiddle.net/3xTM2/466为什么点击提交后'a'不显示? @riko10 检查我的更新

以上是关于模拟“ENTER”按键,就像人类在网站上点击一样[重复]的主要内容,如果未能解决你的问题,请参考以下文章

VB模拟按键

将 Enter 解释为带有选择的 Tab

Node.js JavaScript:在服务器上模拟按键(像宏一样)

从 Qt 应用程序内部模拟 TAB 或 SPACE 按键

使用 Python for Linux 模拟按键事件

在 <Enter> 上提交 jQuery UI 对话框