ajax提交后从外部页面重定向

时间:2013-12-27 12:53:58

标签: javascript php jquery html

您好我正在使用ajax脚本重定向到我进行验证的php页面。在没有验证错误后,我想重定向到另一个页面,但我无法使其工作。这是我的剧本:

<script type="text/javascript" src="js/jquery.form.js"></script>
<script type="text/javascript" >
 $(document).ready(function() { 


            $("#imageform").ajaxForm({
                        target:  \'#preview \',

        });

            });

</script>

这是外部php我进行验证

<?php
require_once('../core/dbconfig.php');
mysql_query("SET NAMES utf8");
$fname=$_POST['name'];
$email=$_POST['email'];
$country=$_POST['country'];
$city=$_POST['city'];
$type=$_POST['type'];
$story=$_POST['story'];
$cookie=$_COOKIE['cookie'];
$sizee = $_FILES['img1']['size'];
if (!$fname or !$city or !$email or !$country or (!$story && $sizee==0))
{

if ($sizee==0 && !$story)
{
echo'<p style="color:red;">Please upload a photo or type your story.<p>';
}

if(!$fname)
{
echo'<p style="color:red;">Please enter your name.<p>';
}
$regex = '/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/'; 
if (preg_match($regex, $email)) {
}
else
{
echo'<p style="color:red">Please enter a valid email.<p>';
}
if(!$country)
{
echo'<p style="color:red">Please select your country.<p>';
}
if(!$city)
{
echo'<p style="color:red">Please enter your city.<p>';
}
}
else
{
....
}

我想要实现的是在完成所有条件后重定向到确认页面。如果我使用成功:window.location.href =“example.php”无法按预期工作。 Thnx提前。

3 个答案:

答案 0 :(得分:0)

 $(myform).ajaxForm({

      beforeSend: function() { 

      },
      error: function() {

      }, 
      complete: function(response) { 
           window.location.href='yourfile.php'
      }
});

答案 1 :(得分:0)

使用ajaxForm你可以使用函数完整,根据文档这个函数...“在请求完成时调用的函数(执行成功和错误回调之后)”。< / p>

但您需要考虑属性 async ,默认情况下,所有请求都是异步发送的(默认情况下,此设置为true)。如果需要同步请求,请将此选项设置为false。

$(myform).ajaxForm({
    async: true,
    error: function(response) {
        //something is wrong
    },    
    complete: function(response) { 
        window.location.href='yourfile.php'
    }
});

OR

$(myform).ajaxForm({
    async: false,
    error: function(response) {
        //something is wrong
    },
    complete: function(response) { 
        window.location.href='yourfile.php'
    }
});

答案 2 :(得分:0)

$.ajax({
        type: "POST",
        dataType: "json",
        url: "friends/get_user_friends",
        data:{
            action:"action",
            type:"type"
        },
        success: function (response) {               
           window.location.href = "http://google.com";                
        },
        error: function (response, ajaxOptions, thrownError) {

        }            
    });