Jquery延迟链接重定向为ajax

时间:2009-10-01 20:54:04

标签: php jquery ajax session

单击链接时,我想在重定向到目标页面之前清除php会话。

我想这样做的方法是加载一个php脚本,该脚本在原始页面中使用ajax清除会话,并且一旦加载了该脚本,就会重定向到目标页面。

这是我的代码:

$(document).ready(function() {
    $("a").click(function(){
        var clearSession = "clearsession.php";  
        $("#content").load(clearSession,"");
    });
});

<a href="destination.html">

目前,在php脚本完成加载之前,它似乎遵循了链接。

一些指导原则:

  1. 您无法将链接指向“destination.html”
  2. 之外的任何其他页面
  3. 您无法将变量添加到目标页面(destination.html?clear)

3 个答案:

答案 0 :(得分:2)

使用load callback,以便在收到回复后执行重定向。

$(document).ready(function() {
    $("a").click(function(){
        var clearSession = "clearsession.php";  
        $("#content").load(clearSession,"",function(){
            window.location = $(this).attr("href");
            return false;
        });
    });
});

<a href="destination.html">

答案 1 :(得分:0)

为什么不直接重定向到clearsession.php?link = destination.html,它会清除会话然后重新定向到所需的网址?

答案 2 :(得分:0)

$(document).ready(function() {
    $("a").click(function(){
        var clearSession = "clearsession.php";  
        $("#content").load(clearSession,"");
        return false;
    });
});

使用“return false;”,浏览器不会关注该链接。