Php 单击链接时,div包含ajax重载

Php 单击链接时,div包含ajax重载,php,jquery,html,reload,pjax,Php,Jquery,Html,Reload,Pjax,嗨,我正在使用ajax加载页面,也可以使用后退按钮工具。除了一个以外,一切都很好。我缩小了我的问题范围,但找不到任何解决办法。我的主页有一个container div,在这里我加载了大部分页面,而没有像gmail那样重新加载整个页面 至于pjax,它还为seo友好的url加载标记 但是主页中有一个div,它从加载的页面中获取pagename并在div中显示。只有当浏览器重新加载时,它才能工作。否则,当我连续打开页面时,它不会改变,而是显示上一个页面 那么我该如何解决这个问题呢。我正在考虑刷新包含

嗨,我正在使用ajax加载页面,也可以使用后退按钮工具。除了一个以外,一切都很好。我缩小了我的问题范围,但找不到任何解决办法。我的主页有一个container div,在这里我加载了大部分页面,而没有像gmail那样重新加载整个页面

至于pjax,它还为seo友好的url加载标记

但是主页中有一个div,它从加载的页面中获取pagename并在div中显示。只有当浏览器重新加载时,它才能工作。否则,当我连续打开页面时,它不会改变,而是显示上一个页面


那么我该如何解决这个问题呢。我正在考虑刷新包含页面名的div。那么我该怎么做呢?

PHP代码总是在服务器端执行,所以当您使用pjax时,这个div不会改变。您需要手动更改pagename div,就像更改content div一样。您可以通过2个pjax调用来完成此操作,或者将ajax响应拆分为pagename和content,但pjax可能不是正确的解决方案。

您可以向包含echo$pagename的文件发送ajax请求,并使用javascript显示响应,即$pagename

由于您使用的是jquery,因此可以使用

这是密码

$.ajax({
    type = "POST",
    url = "your-php-file-path",
}).done(function(response){
    $("#div-id").html(response);
});          

我认为pjax是ajax本身更高效、更现代的解决方案。除了IE supportwell谁关心IE!,大多数最新的浏览器,甚至大多数android和windows phone都支持pjax。没有比这更简单的方法了!!因为越简单越好大家好!我真的需要帮助。@Avik我在答案中添加了脚本。