Php 当AJAX调用页面时,页面重新加载不起作用

Php 当AJAX调用页面时,页面重新加载不起作用,php,ajax,reload,Php,Ajax,Reload,假设这是我的AJAX function call_page(id) { $.ajax({ type: "POST", url: "call_me.php", data: "id=" + id, success: function(msg){ } }); } 已成功调用call_me.php 假设这是我的call_me.php内容 <?php

假设这是我的AJAX

function call_page(id)
{   
     $.ajax({
          type: "POST",
          url: "call_me.php",
          data: "id=" + id,
          success: function(msg){ }                 
     });   
}
已成功调用call_me.php

假设这是我的call_me.php内容

<?php

$var = $_POST['id'];

if(empty($var))
{
    header("location: call_me.php?id=101");
}
else
{
    do something...
}

?>

假设始终满足第一个条件“if(empty($var))”。 页面必须重新加载并转到else语句。 但这并没有发生。我猜页面没有重新加载

我怎样才能纠正这个问题? 谢谢

试试这个

<?php

$var = $_GET['id'];

if(empty($var))
{
    // here flag for redirection is set
    echo 1; 
}
else
{
    do something...
}

?>

首先使用
exit()
after
header(“位置:call_me.php?id=101”)除了AJAX,您还期望什么?标题将导致在AJAX的success函数中返回新信息(
success:function(msg){}
),并且您在AJAX中使用了POST,但是您得到的是
$\u GET
,我不需要页面返回任何信息。我是否应该删除success:function(msg){}?否。您希望通过javascript将浏览器页面刷新为从AJAX响应中获得的页面?您想要什么?最好以JSON格式返回内容。例如
{'status':'fail'}
。然后你可以检查它们,比如
if(msg.status=='fail'){/*然后…*/}
Yes,但是他没有使用任何数据格式。所以我认为他可以在没有json的情况下工作。是吗?+1.是的,但我刚才说更好。但当事情变得更复杂时,你应该使用它。而且当你使用JSON时,你要确保“1”不是来自
echo('w'='w')ie
$.ajax({
     type: "POST",
      url: "call_me.php",
      data: "id=" + id,
      success: function(msg){ 
        // checking the response is for redirection     
        if(msg == 1)
            // javascript code for redirecting to callme.php
        window.location = "call_me.php?id=101";
      }                 
});