我有一个基本上是包装器的html页面。我在页面上有选项卡,单击时使用JQuery.load函数在子目录中加载特定页面。这允许我更改内容以适应部分页面视图,而无需刷新页面或设置会话变量。但是,如果我执行刷新页面,我将回到查看包装器的默认内容。
如何使用JQuery设置变量,以便检查是否设置了该变量,如果是,则在窗口刷新时立即加载页面?我想通过调用额外的AJAX调用来设法找到一种方法来通过PHP来实现这一点,该调用在单击选项卡时设置PHP会话,但我试图摆脱它。
TIA。
答案 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/