Я пытаюсь написать сайт с контентом, загруженным в div во время выполнения, используя PJAX.Все файлы PHP, которые я запрашиваю с помощью PJAX, содержат верхний и нижний колонтитулы, которые генерируют контент только в том случае, если isset($_SERVER['X-PJAX'])
Однако, когда я использую PJAX для загрузки файла PHP, обновляется вся страница.Я бы предположил, что что-то не так с моим кодом PJAX, но загрузка простого HTML-файла работает нормально.
РЕДАКТИРОВАТЬ: В случае, если это поможет, я в настоящее время запускаю все это на WAMPСервер 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 } ?>