javascript - 为什么这个 jquery 会重新加载整个页面?

标签 javascript jquery

您可以在下面看到当光标位于我的 INPUT 框中时,我试图诊断当我按下 ENTER 时发生了什么。

这是我的输入框。

<input type="text" name="addtolist" id = "input" autocomplete="off" autofocus>

这是我的脚本。

$(document).ready(function () {   

    $('.delete').click(function(){
        $(this).parent().fadeOut();
    });

    $('.check').click(function(){
        $(this).parent().toggleClass("inactive");
    });

    $('#input').keyup(function(event){
        if (event.keyCode == 13){
            console.log("lsdkfj");
        };
    });
});

所发生的只是我的页面重新加载——这太棒了,但 F5 已经为我完成了。为什么要重新加载而不是 console.log

最佳答案

如果输入是在表单中,按下回车键时的默认事件是提交表单。所以你需要先防止默认行为:

$('form').submit(function(e){
  e.preventDefault();
});

现在您的 keyup 事件应该起作用了。然后当你想提交表单时,你可以将一个事件附加到某个元素并像这样提交:

$('form').submit();

关于javascript - 为什么这个 jquery 会重新加载整个页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20317864/

相关文章:

javascript - 如何在Android设备中自动播放音频?

javascript - JavaScript 中的示例堆栈,需要澄清 'this' 的用法

Javascript 单击类按钮

javascript - 将两个 .height() 加在一起?查询

事件处理程序中的 JavaScript 调用

javascript - 禁用表单按钮

javascript - VSCode 设置将数组中的 JavaScript 对象推送到新行

javascript - 制作 Pinterest 布局

javascript - 我无法正常打开我的 div

javascript - jQuery 模糊事件未触发