Javascript禁用表单上的输入不起作用

Javascript disable enter on form not working

本文关键字:输入 不起作用 表单 Javascript      更新时间:2023-09-26

当用户在输入字段上按回车键时,我正在尝试禁用提交表单,但我似乎无法获得任何工作。我尝试过的最新脚本是将其添加到头部:

<script type="text/javascript">
    $(document).ready(function() {
        $(window).keydown(function(event){
            if(event.target.tagName != 'INPUT') {
                if(event.keyCode == 13) {
                    event.preventDefault();
                    return false;
                }
            }
        });
    });
</script>

我在控制台中没有收到任何错误,因此无法判断是否有冲突。

现在你正在窗口中捕获事件,所以preventDefault()不会做你想要它做的事情。 您需要从表单中捕获它,以便可以阻止其默认提交操作

尝试:

$('form').on('keyup keypress', function(e) {
  var keyCode = e.keyCode;
  if (keyCode === 13) { 
    e.preventDefault();
    return false;
  }
});

为此可以使用事件捕获。

    window.addEventListener('keydown',function(event) {
        if(event.target.tagName != 'INPUT') {
            if(event.keyCode == 13) {
                event.preventDefault();
                return false;
            }
        }
    }, true);