我有一个要执行的输入字段。通常我会通过 document.getElementById("myinput").click()
来完成,但它是一个输入,所以我必须通过模拟输入来执行它。
我想要类似document.getElementById("myinput").performEnter();
的东西
我从 How to trigger the enter keypress 找到了这个:
var e = $.Event( "keypress", { which: 13 } );
$('#yourInput').trigger(e);
但是有没有办法只在 JavaScript 中做到这一点?
最佳答案
您可以创建自定义事件并将其与 JQuery 的 .trigger() 一起使用。 方法。
var $txt = $("#txt");
var $btn = $("button");
$txt.on("keydown", function(evt){
if(evt.keyCode === 13){
// Create a custom event and pass to the button
var e = $.Event("keydown");
e.which = 13; // ENTER
e.keyCode = 13;
$btn.trigger(e); // Trigger the event for the button
}
});
// Here is the code for a test button
$btn.on("keydown", function(evt){
if(evt.keyCode === 13){
console.log("You pressed ENTER in the text box and triggered the keydown event with ENTER!");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="txt">
<button>Test Button</button>
关于javascript - 对元素/输入执行 "enter",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44050891/