Jquery .load 函数似乎将页面作为独立页面加载



大家好,

多年来我一直在寻找解决方案,但仍然没有找到。

我正在构建一个平台,我正在使用jQuery刷新我的一个页面中的div。 我知道刷新正在工作,因为当我.load()一个简单的页面时,它正在工作。

我正在使用的jQuery代码是:

$('.refreshDIV').load('/pages/extra/results.php');  

我也试过:

$('.refreshDIV').load('/pages/extra/results.php' + location.search);

results.php的第一行是:

<?php
if (!defined('INDEX')) {
    require('../../includes/config.php');
    header('Location: /');
    exit;
} 

当我单击按钮刷新.refreshDIV时,它会将我重定向回/,这假设未定义INDEX并且加载的页面正在作为"独立"页面加载。

当我注释掉第一行时,我在控制台中看到一个error 500,它似乎假设该页面上的 PHP 代码不起作用(它取决于其他页面(。

包含需要刷新的div 的页面如下所示:

<div class="refreshDIV">
<?php include('pages/extra/results.php'); ?>
</div>

页面本身工作正常,但就像我说的那样,当我单击按钮刷新div 时,我被重定向回/

有谁知道我在这里做错了什么?

从您的评论来看,您似乎没有设置常量INDEX,这是在index.php中设置的。
条件!defined('INDEX')将始终返回true

因此,将执行代码header('Location: /');,这会将您重定向到新页面,而不是加载内容。

您需要在results.php中定义常量或删除检查!defined('INDEX')

最新更新