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 < $realpages ? $maxpages : $realpages; //如果总页数小于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 < 1) { $to = $curpage + 1 - $from; $from = 1; //目前为止from为1,to为3 if($to - $from < $page) { //因为这里的前提条件是总条数大于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 ? '
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟空间、营销软件、网站建设、赵县网站维护、网站推广。
JQUERY
function ajaxpage(obj,url,page) { $.ajax({ type: "GET", url : url+"&curpage="+page, success:function(data){ $(obj).html(data); } }) }
调用
网页名称:discuz分页函数改成基于jqueryd的ajax分页函数
文章起源:http://ybzwz.com/article/ihscpd.html