使用一个提交按钮提交两个表单

时间:2014-08-07 16:36:20

标签: javascript html xhtml

我有两个XHTML表单(如下)。我正在寻找一种方法来提交两个表单,一个提交按钮。

下面的第一张表格

<form method= "post" action= "forum_add_111438076.xhtml" >
<input type= "hidden" name="d_token" value="2ab5b36d7d0e5f9fee88cc9a67553db6" />First 
Name:<br/><input type="text" name="meno" maxlength="20"/>
<br/>Last Name:<br/><input type="text" name="text" maxlength="20000"/>
<br/><input type="submit" name="submit" value="Submit" /></form>

第二表格

<form method="post" action="forum_add_111438075.xhtml" >
<input type="hidden" name="d_token" value="d0cb19bc6b0d162a11431213976206b8" />
Phone Number:<br/><input type="text" name="meno" maxlength="20"/>
<br/>Address:<br/><input type="text" name="text" maxlength="20000"/>
<br/><input type="submit" name="submit" value="Submit" /></form>

上面的每个表单都有自己的提交按钮,但我只想使用一个提交按钮。

3 个答案:

答案 0 :(得分:1)

您不能同时提交两份表格。 (就像一个网页不能去两个) 解决这个问题的一种方法是使用Ajax并逐个提交表单。

一些示例代码。 (使用jQuery)

HTML

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

    <form id="form1">
        <input type= "hidden" name="d_token" value="2ab5b36d7d0e5f9fee88cc9a67553db6"  />First Name:<br/><input type="text" name="meno" maxlength="20"/>
    <br/>Last Name:<br/><input type="text" name="text" maxlength="20000"/>
    <br/></form>

    <form id="form2">
    <input type="hidden" name="d_token" value="d0cb19bc6b0d162a11431213976206b8" />
    Phone Number:<br/><input type="text" name="meno" maxlength="20"/>
    <br/>Address:<br/><input type="text" name="text" maxlength="20000"/>
    <br/></form>

    <input type="submit" name="submit" onclick="submitAction()" />

的Javascript

submitAction() {
    $.post('forum_add_111438076.xhtml', $('#form1').serialize())
    $.post('forum_add_111438075.xhtml', $('#form2').serialize())
}

答案 1 :(得分:0)

在两个不同的地方同时提交两份表格是不可能的。 如果您需要单独处理,您可以做的最好的事情是使用您的接收页面收集二级表单帖子,并将其发送到二级处理页面。使用CURL的PHP​​非常适合这样的事情。

答案 2 :(得分:-1)

如果您使用get或ajax函数,它将允许您知道第一个或第二个表单何时完成。如果你使用ajax,那么使用获取你将使用.done,你将使用.success一旦你的第一个表格完成提交,你就可以提交你的另一个表格,如下所示。

//Submit your First form
 $.get("postOne").done(function(){

//When your first form is completed you can then submit your second form.
    $.get("postTwo").done(function(){

    });

});