gpt4 book ai didi

php - 请求 PHP 文件时 PJAX 不工作

转载 作者:行者123 更新时间:2023-11-30 08:11:41 25 4
gpt4 key购买 nike

我正在尝试使用 PJAX 编写一个网站,并将内容在运行时加载到 div 中。我用 PJAX 请求的 PHP 文件都包含一个页眉和页脚,只有在 isset($_SERVER['X-PJAX'])

时才会生成内容

但是,当我使用 PJAX 加载 PHP 文件时,整个页面都会刷新。我假设我的 PJAX 代码有问题,但加载纯 HTML 文件工作正常。

编辑:如果有帮助,我目前正在本地主机上运行的 WAMP Server 2.2 上运行所有这些。这就是我做所有开发工作的地方。

作为引用,这是我用来加载内容的 JS,以及一个 php 页面示例

JS:

if ( $.support.pjax ) {
//disable <a> tabs, store value of href so pjax can use it
$('header a').each(function () {
$(this)
.attr('pjax', $(this).attr('href'))
.removeAttr('href')
.css('cursor','pointer')
})

//link up the pjax
.live('click', function () {
var link = $(this)
$('#content').animate({opacity:0}, {duration:500, complete:function(){
$.pjax({
url: link.attr('pjax'),
container: '#content',
complete: function() {
$('#content').animate({opacity:1}, 500);
}
});
}});
});
}

PHP:

//header.php
<?php
//If we are loading with pjax, ignore the header
if (!isset($_SERVER['X-PJAX'])) {
?>
<!-- head section, opening body tags, etc -->
<div role="main" id="content">
<?php } ?>

//foo.php
<?php include 'header.php'; ?>
<p>sample content</p>
<?php include 'footer.php'; ?>

//footer.php
<?php
if (!isset($_SERVER['X-PJAX'])) {
?>
</div>
<!-- load scripts, etc-->
<?php } ?>

最佳答案

只要使用我总是有更多的运气

 $_SERVER["HTTP_X_PJAX"]

这是我用一个功能齐全的 PJAX php 示例制作的 github 存储库,供那些需要查看所有源代码以启动和运行的人使用,并且可以帮助其他任何人搜索 PJAX php 实现

https://github.com/Jrizzi1/pjaxphp

关于php - 请求 PHP 文件时 PJAX 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9459647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com