如何一次提交两个帖子?

时间:2017-08-29 10:52:30

标签: javascript jquery forms

我正在建立一个django网站,我的代码是:

<script type="text/javascript"> 

$("#lxwjsubmit").click(function(){ 
    var userId=$('#id_user1').val(); 
    var password=$('#id_password1').val(); 
    var newtable2='<table  id="table2"><tr><th></th><td><input type="text" name="userId"  value="'+userId+'" /></td></tr><tr><th></th><td><input type="password" name="password"  maxlength="100"  value="'+password+'" /></td></tr></table>' 
     
    $('#table2').html(newtable2);    
    document.getElementById('form2').submit();    
    document.getElementById('form1').submit(); 
})
</script>
<div class="form-group"> 
          <form action="" method="POST" id='form1'> 
               <table> 
                  <tr><th></th><td><input type="text" name="user"   id="id_user1" /></td></tr> 
                  <tr><th></th><td><input type="password" name="password"  id="id_password1" /></td></tr> 
              </table> 

              <input type="button" value="submit"  id='lxwjsubmit'> 
          </form> 
</div> 


<div class="form-group"> 
          <form action="http://localhost/Login.do" method="POST"  id='form2' hidden='true' >         
      
              <table id="table2">
              <tr><th></th><td><input type="text" name="userId"    /></td></tr>
              <tr><th></th><td><input type="password" name="password"   /></td></tr>
              </table> 
              <input type="button" value="submit" > 
          </form> 
</div> 

我可以单独提交每份表格。 放在一起时,只能提交一种表格。 你能纠正我吗?还是有更优雅的方式提交两种不同的形式?

2 个答案:

答案 0 :(得分:0)

$("#form2").ajaxSubmit({url: 'server.php', type: 'post'})
$("#id_user1").ajaxSubmit({url: 'server.php', type: 'post'})

ajax submit jQuery

答案 1 :(得分:0)

您不能一次提交多个表单,每次提交只能提交一个表单。有一些选择:

  • 将其替换为一个大表单,然后使用<fieldset>,即可获得<form>
  • 在提交第一个表单时,获取另一个表单的值,并通过隐藏字段将其添加到第一个表单。需要一些javascript并且需要维护。
  • 您可以使用AJAX post()提交它们(合并或单独),但这必须适合您的情况。 Ajax可能会使事情变得比需要的更复杂。

还有更多的解决方法。我建议使用第一个,因为它可以使您的代码更清晰,更易于理解。没有多少人希望一次提交两种表格。