表单执行两个不同的操作

时间:2016-04-18 06:55:38

标签: javascript jquery html asp.net forms

我的aspx页面中有一个带有提交按钮的表单标签。

<form id="userReg"  method="post">
      <input type="submit" id="submit" value="Submit" onclick="doActions();" />
</form>

当我点击提交按钮时,我想做两个不同的操作,即重定向到另一个网页表单,然后再重定向到另一个网址。

的Javascript

        function doActions() {
        userForm = document.getElementById('userReg');
        userForm.action = 'GettingUserDetails.aspx';
        userForm.submit();
        userForm.action = 'Confirmationurl.com';
        userForm.submit();
    }

在执行'GettingUserDetails.aspx'操作后,它正在执行Confirmationurl.com操作。

如何执行这两项操作

2 个答案:

答案 0 :(得分:1)

<form name=Form1 action= "login1.php" method=post>
Username <input type="text" name="username">
Password <input type="password" name="password">
<input type="submit" value="Send" name="button1" 
                     onclick="return OnButton1();">

现在,我们有一张表格。当我们单击Submit按钮时,它会调用JavaScript函数:

<script language="javascript">
<!--
function OnButton1()
{
    document.Form1.action = "GettingUserDetails.aspx"    // First target
    document.Form1.target = "iframe1";    // Open in a iframe
    document.Form1.submit();        // Submit the page
    document.Form1.action = "Confirmationurl.com"    // Second target
    document.Form1.target = "iframe2";    // Open in a iframe
    document.Form1.submit();        // Submit the page
    return true;
}
-->
</script>

好的,现在我们将数据提交到两页。正如你所看到的,他们有一个像框架一样的目标。这是因为我们需要它用数据打开两个新页面,但是为了不打扰用户,我们隐藏了这样的IFRAME:

<div style="visibility:hidden">
<iframe NAME="iframe1" WIDTH="40" HEIGHT="40"></iframe>
<iframe NAME="iframe2" WIDTH="40" HEIGHT="40"></iframe>
</div>

该页面将数据发送到IFRAME,信息将根据您的需要进行处理。

答案 1 :(得分:0)

添加Ajax会让它变得更好。

function doActions() {
   $.ajax({
     type: "POST",
      url: "GettingUserDetails.aspx",
      data: $(this).serialize(),
      success: function() {
        // callback code here
           userForm.action = 'Confirmationurl.com';
           userForm.submit();
       }
    })

}

$(userForm).on('submit', function(ev){
 ev.preventDefault();
 doActions();
}