阻止表单提交的问题
issue with prevent form submit
我目前遇到了一个我无法解决的问题,我有一个通过 Javascript 提交的表格,但我无法阻止它,你能帮帮我吗?我提供了最小的可复制脚本。
提前致谢。
<form name="f" id="f" action="asd" method="post" enctype="multipart/form-data"></form>
<script>
document.getElementById('f').addEventListener("submit", function(evt) {
evt.preventDefault();
}, true);
window.addEventListener('load', () => {
document.getElementById('f').submit()
}, false )
</script>
问题是代码执行流程。它在添加事件侦听器之前提交表单。
让您有时间编写代码以添加事件侦听器。我建议您在 document.onready
事件中执行提交。
这是一个简单的例子:https://jsfiddle.net/7453uvt6/7/
我搜索了 HTMLFormElement.submit
的文档,发现使用 form.submit
不会触发 submit
事件。您必须使用 form.requestSubmit
请参阅 https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/submit and https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit
我目前遇到了一个我无法解决的问题,我有一个通过 Javascript 提交的表格,但我无法阻止它,你能帮帮我吗?我提供了最小的可复制脚本。 提前致谢。
<form name="f" id="f" action="asd" method="post" enctype="multipart/form-data"></form>
<script>
document.getElementById('f').addEventListener("submit", function(evt) {
evt.preventDefault();
}, true);
window.addEventListener('load', () => {
document.getElementById('f').submit()
}, false )
</script>
问题是代码执行流程。它在添加事件侦听器之前提交表单。
让您有时间编写代码以添加事件侦听器。我建议您在 document.onready
事件中执行提交。
这是一个简单的例子:https://jsfiddle.net/7453uvt6/7/
我搜索了 HTMLFormElement.submit
的文档,发现使用 form.submit
不会触发 submit
事件。您必须使用 form.requestSubmit
请参阅 https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/submit and https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit