小编典典

用AJAX提交多个表格

ajax

我有一个包含几种形式的页面。我想添加一个提交按钮,该按钮将允许同时保存所有表单,如下所示:

<form id="form1" name="form1" action="someAction" method="post">
    ....form fields
</form>

<form id="form2" name="form2" action="someOtherAction" method="post">
    ....form fields
</form>

<form id="form2" name="form2" action="anotherAction" method="post">
    ....form fields
</form>

<a href="somewhere.html" onclick="submitAll();">Submit All Forms</a>

<script>
    function submitAll() {
        document.form1.submit();
        document.form2.submit();
        document.form3.submit();
    }
</script>

我遇到的问题是,提交第一个表单后,它将页面重定向到该表单的目的地-我想拦截该重定向,以便我可以处理下一个表单。

我知道这可以通过AJAX完成,这将以某种方式允许我捕获返回的页面(如果我选择的话可以忽略它),但是我不知道如何在不映射表单中的每个字段的情况下执行此操作手动。

有人可以帮忙吗?


阅读 221

收藏
2020-07-26

共1个答案

小编典典

这应该通过ajax提交每个表单,而不必自己映射字段:

$('form').each(function() {
    var that = $(this);
    $.post(that.attr('action'), that.serialize());
});
2020-07-26