discuz的ajax,discuz分页函数改成基于jqueryd的ajax分页函数
/**
*AJAX分頁
*$num?為總共的條數???比如說這個分類下共有15篇文章
*$perpage為每頁要顯示的條數
*$curpage為當前的頁數
*$url為請求路徑,
*$obj為html對象,返回給jqery處理
*$page為$multipage這個字符串中要顯示的表示頁數的變量個數
*$maxpages為最大的頁數值???此函數最后有一句$maxpage?=?$realpages;
*/
function?multi($num,?$perpage,?$curpage,$url,$obj,?$maxpages?=?0,?$page?=?10,?$autogoto?=?TRUE,?$simple?=?FALSE)?{
global?$maxpage;
$ajaxtarget?=?!empty($_GET['ajaxtarget'])???"?ajaxtarget=\"".dhtmlspecialchars($_GET['ajaxtarget'])."\"?"?:?'';
$multipage?=?'';
//$mpurl?.=?strpos($mpurl,?'?')???'&'?:?'?';
$realpages?=?1;
//判斷總條數是否大于設置的每頁要顯示的條數
if($num?>?$perpage)?{
//設置在$multipage中當前頁數之前還要輸出幾個頁數
$offset?=?2;
$realpages?=?@ceil($num?/?$perpage);
//總共的頁數(不知道$maxpages的意思),這里假設是15條
$pages?=?$maxpages?&&?$maxpages?
//如果總頁數小于multipage中要輸出的頁數$page,則只輸出到實際頁數為止
if($page?>?$pages)?{
$from?=?1;
$to?=?$pages;
//如果大于的話,就要輸出$page個頁數(我們假設的的15條就符合這個條件)
}?else?{
$from?=?$curpage?-?$offset;
$to?=?$from?+?$page?-?1;
//假設curpage為4,目前為止,from為2,to為11
//下面假設curpage為1
if($from?
$to?=?$curpage?+?1?-?$from;
$from?=?1;
//目前為止from為1,to為3
if($to?-?$from?
//因為這里的前提條件是總條數大于page,所以,如果$to-$from小于page的話顯然達不到目的,應把$to設置為$page
$to?=?$page;
}//目前為止?from為1?,to為10
}?elseif($to?>?$pages)?{//to是不可以大于總頁數的
$from?=?$pages?-?$page?+?1;
$to?=?$pages;
}
}
$multipage?=?($curpage?-?$offset?>?1?&&?$pages?>?$page???'1?...'?:?'').
($curpage?>?1?&&?!$simple???'
上一頁'?:?'');for($i?=?$from;?$i?<=?$to;?$i++)?{
$multipage?.=?$i?==?$curpage???'
'.$i.''?:'
'.$i.'';}
$multipage?.=?($curpage?下一頁'?:?'');
}
$maxpage?=?$realpages;
return?$multipage;
}
JQUERYfunction?ajaxpage(obj,url,page)
{
$.ajax({
type:?"GET",
url?:?url+"&curpage="+page,
success:function(data){
$(obj).html(data);
}
})
}
調用<?php
$multipage?=?multi($total,?2,$curpage,?'index.php?act=goods&op=consulting_ajaxlist&goods_id='.$goods_id,'#gd-com',10);
echo?$multipage;
?>
總結
以上是生活随笔為你收集整理的discuz的ajax,discuz分页函数改成基于jqueryd的ajax分页函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# partial 部分类使用简单举例
- 下一篇: flink实时流遇到的问题排查——部分数