提交按钮触发两次

Submit button fires twice

我有以下提交:

 <input type="submit"  id="buttonNext" name="buttoncrd"  value="Prosegui" class="buttonNavProsegui block-ui"/>

当你在页面上时,我想用键盘按钮激活提交 "Entry" 所以我制作了这个简单的 js 代码:

$(document).ready(function() {
    $(document).keypress(function(event){
       if (event.which == 13){
           $("#buttonNext").click();
        }
    });
});

它工作正常,但是当我将焦点放在提交上并按键盘上的 Enter 时遇到了一些问题。我担心提交会触发两次,你能帮我在聚焦时禁用一次提交吗?

$("#buttonNext").addEventListener('keypress', e => {
  e.stopPropagation()
})

可能会成功。当按钮上发生 keypress 事件时,它会阻止事件在层次结构中向上传播。

您可以使用

 $(document).ready(function() {
    $(document).keypress(function(event){
       if (event.which == 13){
           $("#buttonNext").click();
           event.preventDefault();
        }
    });
});

不会触发两次