使用回车键而不是提交按钮在JS中提交表单

时间:2015-11-23 20:08:45

标签: javascript jquery html forms

我对表单缺乏经验,但是当用户在输入字段中按下回车键时,我想将文本从输入字段传递给我的其余代码(我现在正在测试它,但是不能让它开火)。我使用以下JS:

$(document).ready(function() {
  $("#task").keypress(function(event) {
    if (event.which == 13) {
      event.preventDefault();
      alert("test");
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form class="form" action=" " method="get" autocomplete="off" role="form" autofocus>
  <div class="form-group">
    <input class="form-control input-lg" type="text" autofocus id="task" placeholder="Enter your task:">
  </div>
</form>

我是否有可能需要调整“行动”字段?

1 个答案:

答案 0 :(得分:0)

编辑:只是在jsfiddle中尝试了您的代码,它就可以了。你是否在脚本之前包含了JQuery?

您可以将keypress事件绑定到表单,而不是像这样。这样就不会有与您拥有的每个输入相关的事件。当在表单中的任何输入上按下输入时,将触发此事件。

$(document).ready(function() {
  $(".form").on("keypress", ":input", function(e) {
    if (e.which == 13) {
      e.preventDefault();
      alert("form submitted");
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form class="form" action=" " method="get" autocomplete="off" role="form" autofocus>
  <div class="form-group">
    <input class="form-control input-lg" type="text" autofocus id="task" placeholder="Enter your task:">
  </div>
</form>