包括AJAX导航后不工作

时间:2013-02-05 05:13:46

标签: php jquery include

所以这就是我的困境。我在我的网站主页上有几个包含,他们在初始加载时工作。但是,如果您离开主页然后返回,则包含内容将被破坏。你可以see it live here。涉及以下代码。

在主页上包含:

<? include("packages/blog/s3blog.class.php"); ?>
<? include("packages/core/s3core.class.php"); ?>
<? include("packages/core/s3data.class.php"); ?>

索引结构上的主页位置:

<div class="row" id="content">  
    <?
    if($_SESSION['auth'] == 1) {
            include("packages/Blog/manage.php");
    }
    elseif(isset($_GET['page'])) {
        include("pages/".$_GET['page'].".php");
    }
    else {
        include("pages/home.php");
    }
    ?>
    <div class="row-end"></div>
</div>

用于在导航点击加载页面的脚本:

$(document).ready(function () {
    $('a.js-ajax').click( function( event ) {
        set_ajax_link( $(this), event );
    });
});
function set_ajax_link( el, event ){
    event.preventDefault();
    var url = el.attr("href");
    load_page_content( url );
}
function load_page_content( url ){
    $("#content").load( url, { 'ajax': 'true' }, function(){
        $('#content a.js-ajax').click( function( event ) {
            set_ajax_link( $(this), event );
        });
    });
}

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

在测试中创建pages.php

<?php
set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__));
$page=basename($_SERVER['REQUEST_URL'],'php');
include('pages/'.$page.".php");

在.htaccess中测试dir(如果是apache)

RewriteCond %{REQUEST_URI} ^testing/pages/ [NC]
RewriteRule .* pages.php [L]

没有尝试,但我希望你有这个主意。