【问题标题】:div contained ajax reload when a link clicked单击链接时,div包含ajax重新加载
【发布时间】:2013-09-12 13:58:37
【问题描述】:

您好,我正在使用 ajax 加载页面,也用于后退按钮功能。除了一个,一切都很好。好吧,我缩小了我的问题,但无法得到任何解决方案。我的主页有一个容器 div,我可以在其中加载大部分页面,而无需像在 gmail 中那样重新加载整个页面。

对于 pjax,它还为 seo 友好的 url 加载标签。

但是主页中有一个 div 包含“<?php echo $pagename; ?>”它从加载的页面中获取页面名称并将其显示在 div 中。好吧,它只有在浏览器重新加载时才有效。否则当我连续打开页面时它不会改变,它会显示上一个。

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

【问题讨论】:

  • 大家好!我真的需要帮助。

标签: php jquery html reload pjax


【解决方案1】:

PHP 代码总是在服务器端执行,所以当你使用 pjax 时这个 div 不会改变。您需要像使用内容 div 一样手动更改页面名称 div。您可以通过 2 个 pjax 调用来做到这一点,或者将 ajax 响应拆分为页面名称和内容(但也许 pjax 不是正确的解决方案)。

【讨论】:

  • 好吧,我认为 pjax 是 ajax 本身更高效、更现代的解决方案。除了 IE 支持(谁在乎 ie!),大多数最新的浏览器,甚至大多数 android 和 windows phone 都支持 pjax。
  • 没有比这更简单的方法了吗!!因为越简单越好。 :)
【解决方案2】:

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

由于您使用的是 jquery,因此您可以为此使用 $.ajax

这里是代码

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

【讨论】:

  • @Avik 我已在答案中添加了脚本。
猜你喜欢
  • 2011-09-12
  • 2014-02-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-27
  • 2017-08-21
  • 2021-06-14
相关资源
最近更新 更多