首页 > 解决方案 > 成功后从 php 重定向 Ajax

问题描述

所以这里有另一个问题。我认为这个问题并不难解决。但是我还没有很多使用 Ajax 的经验。

我的问题是我想在成功后重定向。为了更好的想象,我在这里只附上登录代码中的 if 语句。

if ($row['odd_zam'] == 1) {
        $_SESSION['name'][0] = $row['skratka_titul']." ".$row['meno_zam']." ".$row['priezvisko_zam']." ".$row['skratka_titul'];
        $_SESSION['name'][2] = 1;   // 1 = otk
        $_SESSION['name'][3] = $row['prava_zam'];
        $n = header('Location: otk/index-test.php');
        echo $n;
    }
    if ($row['odd_zam'] == 2) {
        $_SESSION['name'][0] = $row['skratka_titul']." ".$row['meno_zam']." ".$row['priezvisko_zam']." ".$row['skratka_titul'];
        $_SESSION['name'][2] = 2;   // 2 = eir
        $_SESSION['name'][3] = $row['prava_zam'];
        $n = header('Location: eir/index.php');
        echo $n;
    }
    if ($row['prava_zam'] == 3) {
        $_SESSION['name'][0] = $row['skratka_titul']." ".$row['meno_zam']." ".$row['priezvisko_zam']." ".$row['skratka_titul'];
        $_SESSION['name'][2] = 3;   // 3 = spravca
        $_SESSION['name'][3] = $row['prava_zam'];
        $n = header('Location: zam/index.php');
        echo $n;
    }

在我的 ajax 代码中,我这样做:

success: function(data){
            window.location.href = data;
        }

但问题是这段代码记录了我,但它不会重定向我。我试过window.location.href = data.n;了,但这不起作用。

标签: ajax

解决方案


在 successs 函数中,您可以使用location.reload();Javascript 函数重新加载同一页面。

success: function(data){
    location.reload();
}

但是,如果您想重新加载到不同的页面,请提及页面地址,如下所示:

success: function(data){
    window.location.href = 'path to reload file';
}

推荐阅读