提交表单后,Jquery重定向在实时服务器上不起作用

时间:2015-07-10 12:54:07

标签: php jquery ajax

我根据登录表单提交前点击的链接重定向到页面。通过ajax提交的表单,我注意到只有在实时服务器中,才会收到通过ajax从php脚本传递的响应。 success: function(data) {//nothing works here}。因此页面不会被重定向。在php页面中,有用于登录用户的脚本。令人惊讶的是,刷新页面后,用户已登录。在用户登录后,重定向工作正常。

我想知道为什么数据不是通过ajax从php传递的,为什么重定向不起作用?

我的ajax ..

$("#login").on("click",function()
          {
             // alert(this_link);
              $("#login_form").submit(function(){             
            var data = {
              "action": "test"
            };
            data = $(this).serialize() + "&" + $.param(data);
            $.ajax({
              type: "POST",
              dataType: "json",
              url: "login2.php?id='"+this_link+"'", //Relative or absolute path to response.php file
              data: data,
              success: function(data) {
                $(".the-return").html("<br />JSON: " + data );
               // alert("Form submitted successfully.\nReturned json: " + data["json"]);
              //alert(data);
              //alert(data["json"]);
              //console.log(data);

               if(data=="'del_create'-1")
                {
                     //window.location='create_post.php';
                     $(location).attr('href', 'https://sample.com/create_post.php');
                }
                else if(data=="'del_avail'-1")
                {                
                    //window.location='update_post.php';
                     $(location).attr('href', 'https://sample.com/update_post.php');
                }
                else
                {
                    window.location='<?php echo $root;?>login/login.php';
                }

              }
            });

php脚本返回的数据

$id3=$id."-".$id2;
echo json_encode($id3);//returns 'del_avail'-1 or 'del_create'-1 if logged in and -0 if not logged in

1 个答案:

答案 0 :(得分:0)

在单引号echo内不起作用。也许以下内容可行。

window.location="<?php echo $root;?>login/login.php";

window.location.href="<?php echo $root;?>login/login.php";