代码之家  ›  专栏  ›  技术社区  ›  Peri Hartman

bootstrap studio:回车键出现,导致页面重新加载

  •  0
  • Peri Hartman  · 技术社区  · 3 年前

    我有一个网页,里面有几种表格。一次只能看到一个,具体取决于状态。

    在一个表单上,按下回车键似乎会导致页面的重新加载,而不是触发表单按钮的单击事件。

    我有很多javascript,主要是因为我需要与mailchimp进行客户端交互。因此,我禁用了表单的 action= html,并创建了一个javascript函数来处理点击。如果你点击按钮,效果会很好。

    我还为表单中的唯一字段指定了一个侦听器:

    var input = document.getElementById ("new-email-address");
    input.addEventListener ("keyup", function(event)
    {
      if (event.keyCode === 13)
      {
        event.preventDefault();
        document.getElementById("new-email-address").click();
      }
    });
    

    然而,当我点击回车键时 $(document).ready (function() 执行。可能还有其他事情事先在执行,但如果是这样的话,我还没有找到发现这一点的方法。

    是什么导致了这种行为?

    0 回复  |  直到 3 年前
        1
  •  0
  •   Peri Hartman    3 年前

    事实证明,回车键是在表单级别处理的。为了禁用它,我为每个表单添加了以下代码:

    $("#the-form").keypress(function(e)
    {
      if (e.which == 13) // Enter key
        return false;
    });