javascript - 使用提交事件监听器停止表单提交

标签 javascript html dom-events

我正在尝试使用提交 事件监听器 阻止表单提交。我的匿名函数运行但表单仍然提交,即使在函数末尾返回 false 也是如此。没有抛出 JS 错误。

我是不是犯了一些愚蠢的错误?

<form id="highlight">
    Row: <input type="text" name="rows" value="1" id="rows">
    Column: <input type="text" name="cells" value="1" id="cells">
    <input type="submit" name="Submit" value="Highlight" id="Submit">
</form>

<script>
var highlight_form = document.getElementById('highlight');
highlight_form.addEventListener('submit', function() {
        alert('hi');
    return false;
}, false);
</script>

最佳答案

我总是在我想为其取消事件的事件监听器上调用 event.preventDefault(),并返回 false。这对我总是有效。

<script>
var highlight_form = document.getElementById('highlight');

highlight_form.addEventListener('submit', function(event)
{
    event.preventDefault();
    alert('hi');
    return false;

}, false);
</script>

关于javascript - 使用提交事件监听器停止表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5915893/

相关文章:

javascript - DIV 向下滚动时向上移动

JavaScript removeChild(this) from input[type ="submit"] onclick 破坏了 Firefox 下 form.submit() 的 future 使用

javascript - 将 Promise 与事件相结合

javascript - 如何在 Instagram 上找到当天最受欢迎的图片?

javascript - 如何独立滚动 2 个不同的面板?

javascript - 在异步 Web API 调用之前保存并关闭退出的 Web 资源

javascript - 从主 html 脚本调用 SVG 的外部 JavaScript 函数?

html - 更改表格行边框查询

如果内容超过一定限制,PHP 电子邮件会中断

javascript - 当鼠标移到该选项上时如何获取要选择的多选对象的选项