使用ajax和jquery加载页面的一部分,但在url中显示GET变量

时间:2011-07-11 22:17:20

标签: php javascript jquery ajax

为了告诉你我想做什么,你只需要访问gmail。当您点击收件箱时,网址会刷新到此标签= mm #inbox并且刷新页面的唯一部分是您的电子邮件的主要部分,Google会调用div.lm 。怎么可能?他们是使用缓存还是使用我不知道的javascript命令?

我想要做的是,我有一个包含两个不同标签的页面。

<div id="navcontainer">
<ul id="navlist">
<li id="active"><a href="#" id="current">Products</a></li>
<li><a id="prreq" onclick="show()" >Requests</a></li>

</ul>
</div>
<div class="container"></div>

当用户继续时,例如。 cart.php他们将转到第一个标签。当用户单击第二个选项卡时,将触发一个js函数,该函数调用文件cart.php?rq = r,结果显示在容器div中。 (我知道目前我已发布)

function show(){
var prstr= ".container"; 
var data= {
    rq: "r"
};
$.ajax({
    type: 'POST',
    url: "cart.php",
    data: data,
    success: function(data1)
    {

        $(prstr).html(data1);

    }
});

}

我想要的是当用户刷新页面时仍然在cart.php?rq = r中而不必再次单击该选项卡。 我很感激任何帮助。如果您需要更多信息,请告诉我 提前谢谢。

1 个答案:

答案 0 :(得分:3)

他们只是通过hash访问网址的location.hash组件。当哈希值发生变化时,它们必须有一些逻辑来确定要刷新页面的哪一部分。