Javascript 按enter键提交表格

Javascript 按enter键提交表格,javascript,Javascript,菜鸟问题。我有一个带有输入框和提交按钮的简单表单。当点击按钮时,它会触发一些php来搜索输入项并输出任何结果。我希望能够在键入搜索词后按enter键,而不必单击按钮 我知道这是一件基本的事情,我在这里找到了解决方案,但当我尝试在代码中添加一个keyup事件监听器时,它似乎没有改变任何东西,我也不清楚为什么-无论是否按js键enter,似乎都会刷新页面?我猜问题是我不想“提交”表格,我想做其他事情 代码如下: <?php if (isset($_POST['submit'])) { *R

菜鸟问题。我有一个带有输入框和提交按钮的简单表单。当点击按钮时,它会触发一些php来搜索输入项并输出任何结果。我希望能够在键入搜索词后按enter键,而不必单击按钮

我知道这是一件基本的事情,我在这里找到了解决方案,但当我尝试在代码中添加一个keyup事件监听器时,它似乎没有改变任何东西,我也不清楚为什么-无论是否按js键enter,似乎都会刷新页面?我猜问题是我不想“提交”表格,我想做其他事情

代码如下:

<?php  
if (isset($_POST['submit'])) {
*Removed the search php because I assume it is not relevant to the question*
?>

<div class="site-section bg-dark" id="start">
  <div style="padding-left: 20px">
    <h3 class="text-white">Find book based on title</h3>
    <div class="col-md-6">
      <div class=" mb-4">

        <div class="form-group">
          <form method="post">
            <label for="title">Title</label>
            <input type="text" id="title" name="title" class="form-control" placeholder="Title">
            <p></p>
            <button class="btn m-1 btn-secondary">
              <input type="submit" id="submit" name="submit" value="View Results">
            </button>
          </form>
        </div>

      </div>
    </div>
  </div>
    
  <script>
    var input = document.getElementById("title");
    input.addEventListener("keyup", function(event) {
    if (event.keyCode === 13) {
      event.preventDefault();
      document.getElementById("submit").click();
    }
    });
  </script>

  *Results output here*
</div>

根据书名查找书籍
标题

var输入=document.getElementById(“标题”); input.addEventListener(“键控”,函数(事件){ 如果(event.keyCode===13){ event.preventDefault(); document.getElementById(“提交”)。单击(); } }); *这里的结果输出*
非常感谢

编辑: 已解决,谢谢您的建议。事实证明,这只是Firefox中的一个问题,而不是Chrome,原因是:

        <button class="btn m-1 btn-secondary">
          <input type="submit" id="submit" name="submit" value="View Results">
        </button>


input type=“submit”已经是一个按钮,将其环绕在另一个按钮上显然会导致浏览器出现一些混乱。

您不必为此做任何事情。这是具有提交按钮的表单的默认功能。“当用户单击提交按钮(
)或在编辑表单中的字段(例如
)时,提交事件将触发。”在按钮上添加type=“submit”。@shashashank-这样做没有意义,这是默认设置。也不要嵌套按钮。感谢您的帮助@Ollie。我现在设法解决了这个问题。