如何在wordpress中没有reaload页面进行分页。 我使用以下代码进行分页,但这里的页面是每个分页的reaload。 我该怎么做才能阻止realod页面???请建议我。
<?php
$page = (get_query_var('page')) ? get_query_var('page') : 1
$limit=10;
$offset = ( $page - 1 ) * $limit;
$data = $wpdb->get_results("select * from wp_products order by product_id $sort_by
LIMIT $offset,$limit ");
$total=$wpdb->get_results("select * from wp_products ");
$pages = COUNT($total);
$pages = ceil($pages / $limit);
$querystring = "";
foreach ($_GET as $key => $value) {
if ($key != "page") $querystring .= "$key=$value&";
}
// Pagination
?>
<div class="pagination">
<?php
if( $pages > 1)
{
$range=1;
$showitems = ($range * 2)+1;
$page1=$page;
$prev=$page1-1;
if($page > 1)
{
echo "<a class=\"page gradient\" ";
echo "href=\"?{$querystring}page=$prev";
echo "\">Previous</a> ";
}
for ($i = 1; $i <= $pages; $i++)
{
if (1 != $pages &&( !($i >= $page+$range+1 || $i <= $page-$range-1) || $pages <= $showitems ))
{
if($i == $page)
{
echo "<span class=\" page active\">".$i."</span>";
}
else
{
echo "<a class=\"page gradient\"";
echo "href=\"?{$querystring}page=$i";
echo "\">$i</a> ";
}
}
}
if($page!=$pages)
{
if($showitems < $pages)
{
echo "..... ";
}
$page1=$page;
$next=$page1+1;
echo "<a " . ($i == $page ? "class=\"page active\" " : "class=\"page gradient\"");
echo "href=\"?{$querystring}page=$next";
echo "\">Next</a> ";
}
}
?>
</div>
答案 0 :(得分:0)
尝试这样的事情怎么样:
$('.page').click(function(e) {
e.preventDefault();
$.ajax({url: $(this).prop('href'), success: function(d) {
var page = $(d).find('.pagination').html();
$('.pagination').html(page);
}});
});
这使用jQuery来禁用下一个链接的正常点击事件,抓取下一个链接的href,向下一页发出一个AJAX请求,保存下一页的分页div的HTML,并替换当前页面的分页div与新的。
答案 1 :(得分:0)
只需一次获取所有页面然后在同一页面上使用jquery datatable js进行分页,在这种情况下页面将不会重新加载。 这里有数据表示例。
http://datatables.net/examples/basic_init/alt_pagination.html