当我按下回车键时,如何触发onclick功能

How can I trigger onclick function when I press enter button?

本文关键字:何触发 onclick 功能 回车      更新时间:2023-09-26

我使用以下代码根据用户文本输入更新url链接:

<input type="text" id="q" />
<input type="button" id="submit" value="submit" />
<script>
$(function () {
$("#submit").click(function() {
    var url = "/tag/";
    url += $("#q").val();
    window.location = url;
});
});
</script>

现在,当有人点击提交按钮时,它工作得很好。我想要的是让它在用户按下回车键时也能工作。Fiddle HERE

试试这个:

$(document).keypress(function(e) {
 if(e.which == 13) {
    var url = "/tag/";
    url += $('#q').val();
    window.location = url;
 }
});

您可以简单地使用$(document).keypress()为此,从.click()中提取您的函数,以避免类似以下的代码复制:

<input type="text" id="q" />
<input type="button" id="submit" value="submit" />
<script>
$(function () {
var executeFunction = function(){
    var url = "/tag/";
    url += $("#q").val();
    window.location = url;
};
$("#submit").click(executeFunction);
$(document).keypress(function(event) {
    if(event.which == 13) {
        executeFunction();
    }
});
});
</script>

更新

一个更好的解决方案是使用jquery .submit()事件处理程序

<input type="text" id="q" />
<input type="button" id="submit" value="submit" />
<script>
$(function () {
$("#submit").submit(function() {
    var url = "/tag/";
    url += $("#q").val();
    window.location = url;
});
});
</script>