2012-07-23 107 views
0

我搜索并从这里找到了漂亮的代码。 Submit a form using jQueryJquery在一个页面中提交多个表单

<input type='button' value='Submit form' onClick='submitDetailsForm()' /> 
<script language ="javascript" type = "text/javascript" > 
    function submitDetailsForm() 
    { 
     $("#formId").submit(); 
    } 
</script> 

但是,你能告诉我们如何处理页面中的多个表单吗?

<form id="myForm1" action="comment.php" method="post"></form> 
<form id="myForm2" action="comment.php" method="post"></form> 
<form id="myForm3" action="comment.php" method="post"></form> 
<form id="myForm4" action="comment.php" method="post"></form> 
+0

精确复制http://stackoverflow.com/questions/ 11373361/jquery-multiple-forms-submit – Sibu 2012-07-23 09:33:20

回答

4

做到这一点,我建议把一个类上要提交这样每个输入按钮。

例如,你可以有一些形式是这样的:

<form id="form1"> 
    <!--Form elements--> 
    <input class="submitButton" type="button" value="submit" /> 
</form> 
<form id="form2"> 
    <!--Form elements--> 
    <input class="submitButton" type="button" value="submit" /> 
</form> 

然后,您可以使用jQuery来提交他们是这样的:

$(".submitButton").click(function() { 

    //Select the parent form and submit 
    $(this).parent("form").submit(); 

}); 
+0

嗨,山姆,非常感谢你,我现在有了一个想法。对不起,我对jQuery很新。 – Thanaporn 2012-07-23 10:43:06

+0

@Thanaporn根本没有问题,我会考虑上面对你的问题的评论,它的价值很快就会接受一些答案。快乐的编码! – Undefined 2012-07-23 10:44:11

1

没有Ajax就没有办法做到这一点。当你提交一个表单时,你实际上正在发出一个http请求,所以会加载一个新的html页面。

避免这种情况的唯一方法是通过Ajax发送表单,这样您就可以控制请求的响应(因此无法阻止您通过此方式发送多个表单)。

您可以this jQuery plugin

相关问题