使用JS / JQuery设置页面变量

时间:2011-08-01 04:45:16

标签: javascript jquery

我有一个基本上是包装器的html页面。我在页面上有选项卡,单击时使用JQuery.load函数在子目录中加载特定页面。这允许我更改内容以适应部分页面视图,而无需刷新页面或设置会话变量。但是,如果我执行刷新页面,我将回到查看包装器的默认内容。

如何使用JQuery设置变量,以便检查是否设置了该变量,如果是,则在窗口刷新时立即加载页面?我想通过调用额外的AJAX调用来设法找到一种方法来通过PHP来实现这一点,该调用在单击选项卡时设置PHP会话,但我试图摆脱它。

TIA。

2 个答案:

答案 0 :(得分:2)

您可以尝试使用cookies保存页面状态。

在您的JQuery.load回调函数中,您可以设置cookie,并且可以在首次加载页面时检查此cookie以找出要打开的选项卡:

//Store page state when loading tab using Ajax
function loadTab(tabVal)
{
    $.load("www.example.com" + tabVal, 
        function(){
            document.cookie=tabVal;
            //...rest of your your load logic
        }
    );
}

//On document ready, check cookie to determine which page to load
$( 
    function(){
        var pageState = document.cookie;
        if( pageState ){
            loadTab(pageState);
        }
    }
);

答案 1 :(得分:0)

查看jQuery BBQ plugin。您正在谈论的“页面变量”可能是url哈希。示例:http://benalman.com/code/projects/jquery-bbq/examples/fragment-basic/