提交按钮会触发两次

时间:2017-11-22 15:38:57

标签: javascript jquery submit

我有以下提交:

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

当你在页面上时,我想用键盘按钮激活提交&#34;条目&#34;所以我做了这个简单的js代码:

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

它正常工作,但当我专注于提交时我遇到了一些问题,我按下键盘上的Enter键。我担心提交会两次开火,你可以帮我禁用一个提交时关注吗?

2 个答案:

答案 0 :(得分:1)

您可以使用

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

它不会触发两次。

答案 1 :(得分:0)

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

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