一尘不染

使用JavaScript在文本框中的Enter键上触发按钮单击

javascript

我有一个文本输入和一个按钮(请参阅下文)。当在文本框中按下键时,如何使用JavaScript 触发按钮的click事件Enter

当前页面上已经有一个不同的“提交”按钮,因此我不能简单地将该按钮设为“提交”按钮。而且,如果 Enter从该一个文本框中按下该按钮,我
希望按键单击此特定按钮,没有其他选择。

<input type="text" id="txtSearch" />
<input type="button" id="btnSearch" value="Search" onclick="doSomething();" />

阅读 274

收藏
2020-04-25

共1个答案

一尘不染

在jQuery中,以下将起作用:

$("#id_of_textbox").keyup(function(event) {
    if (event.keyCode === 13) {
        $("#id_of_button").click();
    }
});



$("#pw").keyup(function(event) {

    if (event.keyCode === 13) {

        $("#myButton").click();

    }

});



$("#myButton").click(function() {

  alert("Button code executed.");

});


<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>



Username:<input id="username" type="text"><br>

Password:&nbsp;<input id="pw" type="password"><br>

<button id="myButton">Submit</button>

或在纯JavaScript中,以下方法将起作用:

document.getElementById("id_of_textbox")
    .addEventListener("keyup", function(event) {
    event.preventDefault();
    if (event.keyCode === 13) {
        document.getElementById("id_of_button").click();
    }
});



document.getElementById("pw")

    .addEventListener("keyup", function(event) {

    event.preventDefault();

    if (event.keyCode === 13) {

        document.getElementById("myButton").click();

    }

});



function buttonCode()

{

  alert("Button code executed.");

}


<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>



Username:<input id="username" type="text"><br>

Password:&nbsp;<input id="pw" type="password"><br>

<button id="myButton" onclick="buttonCode()">Submit</button>
2020-04-25