【发布时间】:2021-08-11 11:28:00
【问题描述】:
这是我的代码摘要
<form class=”form1” action=”action.php” method=”POST”>
//some code
</form>
<form class=”form2” action=”action.php” method=”POST”>
//some code
</form>
<form class=”form3” action=”action.php” method=”POST”>
//some code
</form>
<button id=”submit” type=”submit” name=”submit_changes”>Save Changes</button>
假设脚本提交所有表单
<script>
document.getElementById('submit').addEventListener('click', function() {
// check for and report errors here
for (var i = 0; i < document.forms.length; i++) {
document.forms[i].submit();
};
console.log(document.forms.length);
});
</script>
我意识到单击“保存更改”按钮后,我的 action.php 似乎只处理最后一个表单,即具有类属性的表单 class= “form3” 我意识到表单标签是一个异步函数。如果一个人在他的文件中有许多表单,并且只有一个提交按钮,那么提交按钮将不会提交所有表单,而是提交最后一个,因为它是异步的。我是一名自学成才的网络开发人员,欢迎任何更正或解决方案。自从我试图解决这个问题以来已经一周了。
【问题讨论】:
-
你想做的事情并没有多大意义。您所有的表单都具有相同的
action值。为什么不只有一个形式? -
这个问题和
mysql有什么关系?还有与php的关系在哪里? -
我不认为任何事情都会奏效,因为一旦您提交表单,HTTP 重定向就已经发生,其余的 JS 将不会执行后记。唯一的方法可能是为每个表单使用 iFrame(或者可能是不同的框架!)。
标签: javascript html forms