javascript - 无法销毁 session 变量

标签 javascript php jquery session

我想在使用 jQuery 关闭弹出窗口时取消设置 session 变量。 jQuery代码如下:

$("#close").click(function (){
    $("#popup_container2").css("display", "none");
        if($("#popup_container2").css("display")=="none")
        {
            var s=1;
            $.post("check_data.php", "s=" + s, function(respose){
            location.reload();
        });
        }                   
});

仅当 $_SESSION['question_temp_id'] 时,此弹出 block 才会在页面加载时打开。已设置。不然就不会了为此,我在 body 标记中添加了此代码。

if(isset($_SESSION['question_temp_id'])) {
    echo 'onLoad="div_show();"';
}

查看数据页面,php代码如下。

if(isset($_POST['s']) && $_POST['s']==1) {
    unset($_SESSION['question_temp_id']);
}

问题是,即使我取消设置该 session 变量,弹出窗口仍然打开。 我无法弄清楚这里的问题。请提出建议。

提前致谢。

最佳答案

  1. 调试检查数据页面。可能未调用 unset。

if(isset($_POST['s']) && $_POST['s']==1) { unset($_SESSION['question_temp_id']); }

  • 我的建议是使用 question_temp_id 的实际值,而不是设置/取消设置。您可以使用 Y/N 值。虽然设置/取消设置应该有效,但比较值通常可以更好地控制代码中的后续更改。
  • 关于javascript - 无法销毁 session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30413583/

    相关文章:

    javascript - 使用 JavaScript 匹配精确的字符串

    javascript - 单击按钮创建一个新的进度条

    javascript - 当更新的 PHP 动态时钟收到新输入时发出信号

    javascript - jQuery 整体平滑滚动而不是 DIV

    javascript - 在dojo中将数据从一个选项卡绑定(bind)到另一个选项卡(在选项卡打开时?)

    javascript - Angular Cookies.remove 不起作用

    php - jQuery/Ajax 请求被发送两次

    php - 将输入类型复选框与输入类型文本关联

    javascript - 搜索并替换 html 中的文本序列

    javascript - JQuery 如何给选定的文本添加 <span> 标签