按Enter键按钮是否在输入键上触发?

时间:2018-05-15 16:20:27

标签: javascript jquery html

我知道这是一个已经解释过的主题,但由于某种原因,我的输入数字会触发我的按钮。我已经读过,如果你放type=button它不应该这样做,但它仍然存在。我也尝试设置event.preventDefault(),似乎没有任何效果。

$(".buttonForNumber").on('click', function (evt) {
     alert("I'm here, I don't know why");
});

$(".numberToEnter").on('keyup', function (evt) {
    evt.preventDefault();
    if (evt.keyCode === 13) {
        //do something....
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="number" class="form-control numberToEnter"> 

<button type="button" class="btn btn-default buttonForNumber">
    Button
</button>

2 个答案:

答案 0 :(得分:0)

这是因为我的按钮位于表单中,我删除了标签并且已经解决了

答案 1 :(得分:0)

试试这个......

$("body").on('keyup', function (evt) {
    evt.preventDefault();
    if (evt.keyCode === 13) {
        $(".buttonForNumber").trigger('click')
    }
});