我试图弄清楚为什么这个 JavaScript 不会阻止表单被提交:
<form action="http://www.example.com" id="form">
<input type="text" />
<input type="submit" />
</form>
<script>
var code = function () {
return false;
};
var element = window.document.getElementById("form");
if (element.addEventListener) {
element.addEventListener("submit", code, false);
}
</script>
除非我将以下 onsubmit 属性添加到表单元素:
<form action="http://www.example.com" id="form" onsubmit="return false">
<input type="text" />
<input type="submit" />
</form>
<script>
var code = function () {
return false;
};
var element = window.document.getElementById("form");
if (element.addEventListener) {
element.addEventListener("submit", code, false);
}
</script>
似乎单独的 addEventListener 方法应该可以解决问题。有什么想法吗?我在 Mac 上,在 Safari、Firefox 和 Opera 上遇到相同的结果。谢谢。