在JS和/或jQuery中,模拟用户在文本输入框中输入文本的最佳方式是什么?
我想在输入框中输入文本,我只想触发所有通常由用户在输入框中输入信息触发的事件handlers.这意味着聚焦、向下键、按键、向上键和模糊.我想.
那么,我们将如何做到这一点呢?
在JS和/或jQuery中,模拟用户在文本输入框中输入文本的最佳方式是什么?
我想在输入框中输入文本,我只想触发所有通常由用户在输入框中输入信息触发的事件handlers.这意味着聚焦、向下键、按键、向上键和模糊.我想.
那么,我们将如何做到这一点呢?
您可以通过直接调用来触发任何事件,如下所示:
$(function() {
$('item').keydown();
$('item').keypress();
$('item').keyup();
$('item').blur();
});
这能做你想做的事吗?
您可能还应该触发.focus()
或潜在的.change()
如果您想用特定的键触发键事件,可以这样做:
$(function() {
var e = $.Event('keypress');
e.which = 65; // Character 'A'
$('item').trigger(e);
});
这里有一些关于按键事件的有趣讨论:jQuery Event Keypress: Which key was pressed?,特别是关于跨浏览器与.Which属性的兼容性.