单击“提交”后重定向到另一个页面

时间:2014-08-20 14:41:11

标签: html forms

我有这个表单,但是当我点击提交时,它会转到contactform/contact.php。 我仍然需要action="contactform/contact.php",因为它包含信息。

点击提交后,我需要将其重定向到另一个链接示例google.com。我知道有一种方法,但我无法记住它,它在提交的行上,我相信是在JavaScript中。

<form id="ajax-contact-form" method="post" action="contactform/contact.php">
  <div class="form-option" id="main-font">Name:</div>
  <div><input class="required inpt" type="text" name="name" value="" /></div>
  <div style="clear:both"></div>
  <div class="form-option" id="main-font">Email:</div>
  <div><input class="required inpt" type="text" name="email" value="" /></div>
  <div style="clear:both"></div>
  <div class="form-option" id="main-font">Phone:</div>
  <div><input class="required inpt" type="text" name="phone" value="" /></div> 
  <div style="clear:both"></div>
  <div class="button-container">
    <label id="load"></label><input name="submit" type="image" class="submit-btn" value="Submit" />
  </div>           
</form>

在contact.php中是必填字段的代码,如果它们丢失或没有。如果字段已填写并单击“提交”,则会将您带到contact.php,它会为您提供“确定”

我需要更改“确定”,将我带到example.com

 if($mail)
    {
echo 'OK';
   if($autorespond =="yes")
 {
    include_once("autoresponde.php");
   }
}

}
else
{
echo '<div class="error">'.$error.'</div>';
}

 }

2 个答案:

答案 0 :(得分:1)

JS无济于事。当它可以触发时,用户已经离开页面来命中表单处理程序脚本,这意味着表单页面本身及其上的任何代码都被关闭。

您应该只在表单处理程序中重定向

<?php

if ($_SERVER["REQUEST_METHOD"] == "POST") {
   ... handle form...
}

if ($form_processed_successfully) {
   header("Location: http://google.com");
}

答案 1 :(得分:0)

也许这段代码应该有所帮助。这个jQuery代码将监听您的提交请求,并在重定向用户之前等待2秒。

    $('#form').submit(function(e) {
    e.preventDefault(); // Remove this line if you want to submit the form data as well.
    var i = 0;
    var x = setInterval(function() {
    i++; // Just making sure that browser get enough time to submit data to server.
    },1000);

    if(i==2) { 
    window.location = "http://www.google.com" 
    clearInterval(x);
    }


});