javascript - e.preventDefault() 不适用于表单提交

标签 javascript jquery html

提交 HTML 表单后,即使我的提交函数中有 e.preventDefault() 命令,网页也会重新加载。

$("#room-code-form").addEventListener("submit", function(e) {
  e.preventDefault();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="room-code-form">
  <input type="text" />
  <input type="submit" />
</form>

最佳答案

尝试使用提交功能。您需要在 Document Ready 函数中绑定(bind)它

$(document).ready(function() {
  $("#room-code-form").submit(function(e) {
    e.preventDefault();
  });
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="room-code-form">
  <input type="text" />
  <input type="submit" />
</form>

$("#room-code-form").submit(function(e) {
   return false;
});

关于javascript - e.preventDefault() 不适用于表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56212919/

相关文章:

javascript - 即使 Ajax 调用未在 Select2 中返回任何结果,也将值保留在输入中

javascript - 为什么代码 "new Promise"总是导致空数组

javascript - 如何防止停鱼随机逆转且多鱼发生

javascript - 带有隐藏子菜单的 float 菜单

html - Google 是否索引 HTML 自定义数据属性?

php - html,css,从 gif 文件执行 javascript

javascript - 从 firebase onCall 云函数读取 Firestore 中的文档

javascript - Polymer 1.0 处理动态创建的纸张输入

php - AJAX脚本删除表头

javascript - 计算没有名称或 ID 的通用 DIV 标签