是否有可能如何通过一个按钮提交两个表单然后两个表单执行两个不同的操作?

时间:2015-09-22 08:25:34

标签: javascript php

我必须尝试JavaScript。但它只执行一个表单操作。请解释如何在同一页面中使用两个表单的一个按钮。

我必须使用以下代码:



function my()
{
 document.schedule.action = "firstaction";
 document.schedule.target = "_blank";    
 document.schedule.submit();            
 return true;
}
function my1()
{
    document.consultant.action = "secondaction";
    document.consultant.target = "_blank";    
    document.consultant.submit();             
    return true;
}




3 个答案:

答案 0 :(得分:0)

无法提交视差表格

因为表单提交意味着加载新页面,所以浏览关闭所有现有连接,例如您之前的表单提交。

<强>溶液

使用ajax

function my()
{
   $.ajax({
    url:document.schedule.action,
    type:'post',
    data:$(document.schedule).serialize()
  });  
 return true;
}

答案 1 :(得分:0)

submit()将以正常方式提交表单,从而在提交其他/第二表单之前重新加载页面。要做你想做的事,请使用Ajax 一个jQuery Ajax示例:

$("#form1").submit(function(e){
    e.preventDefault();
    $.post("functions.php", {key1:"value1", key2:"value2"}, function(data){
        //submit the second form here using the same $.post method
    });
});

答案 2 :(得分:0)

Ajax是解决方案。

您可以这样做:

<form class="myform">
  <!-- form 1 fields -->
</form>

<form class="myform">
  <!-- form 2 fields -->
</form>

使用JQuery

$('.myform').sumit(function(e)) {
    e.preventDefault();

    // FORM VALIDATION

    // Form 1 function
    $.ajax({
        url: "action1",
    }).success(function() {
        // DO SOMETHING
    });

    // Form 2 function
    $.ajax({
        url: "action2",
    }).success(function() {
        // DO SOMETHING
    });
}

在我看来,你不再需要两种形式,只需要一种形式。