首先在列表页模板新建一个ajax模板,然后插入如下代码,
<?
$ajax=(int)$_GET['ajax'];
if(!$ajax){ //判断ajax请求
exit();
}
$tmpid=(int)$_GET['tempid'];
$totalnum=$empire->num("select id from {$dbtbpre}ecms_news where classid=$navclassid");
$line=6; //每页内容数
$page=(int)$_GET['page'];//当前页码
$start=0;
$page_line=6;//每页显示链接数
$offset=$page*$line;//总偏移量
//ajax前台分页 $num信息总数,$line每页信息书,$page_line每页显示链接数,$page页码
function page_ajax($num,$line,$page_line,$start,$page,$search){
global $fun_r;
if($num<=$line)
{
return '';
}
$search=RepPostStr($search,1);
//$url=eReturnSelfPage(0).'?page';
$url=eReturnSelfPage(0).'?'.$search.'&page';
$snum=2;//最小页数
$totalpage=ceil($num/$line);//取得总页数
$fun_r['pripage']='<';
$fun_r['nextpage']='>';
$firststr='<a title="'.$fun_r['trecord'].'"> <b>'.$num.'</b> </a> ';
$prepage='<a class="prev end" href="javascript:">'.$fun_r['pripage'].'</a>';
$nextpage='<a class="next end" href="javascript:">'.$fun_r['nextpage'].'</a>';
//上一页
if($page<>0)
{
$toppage='<a data="0" href="javascript:">'.$fun_r['startpage'].'</a>';
$pagepr=$page-1;
$prepage='<a class="prev" data="'.$pagepr.'" href="javascript:">'.$fun_r['pripage'].'</a>';
}
//下一页
if($page!=$totalpage-1)
{
$pagenex=$page+1;
$nextpage='<a class="next" data="'.$pagenex.'" href="javascript:">'.$fun_r['nextpage'].'</a>';
$lastpage='<a data="'.($totalpage-1).'" href="javascript:">'.$fun_r['lastpage'].'</a>';
}
$starti=$page-$snum<0?0:$page-$snum;
$no=0;
for($i=$starti;$i<$totalpage&&$no<$page_line;$i++)
{
$no++;
if($page==$i)
{
$is_1='<a class="active" data="'.$i.'" href="javascript:">';
$is_2='</a>';
}
else
{
$is_1='<a data="'.$i.'" href="javascript:">';
$is_2='</a>';
}
$pagenum=$i+1;
$returnstr.=$is_1.$pagenum.$is_2;
}
$returnstr=$prepage.$returnstr.$nextpage;
return $returnstr;
}
?>
<div class="idx_titbox">
<span class="tit">新闻资讯</span>
</div>
<ul class="idx_pro_list clearfix">
[e:loop={"select * from [!db.pre!]ecms_news where classid=$navclassid order by myorder=0,myorder,newstime DESC limit $offset,$line",10,24,0}]
<li>
<a href="<?=$bqsr['titleurl']?>">
<img src="<?=$bqr['titlepic']?$bqr['titlepic']:'/e/data/images/notimg.gif'?>" alt="<?=$bqr['title']?>" class="img"/>
<h6 class="title ellipsis"><?=$bqr['title']?></h6>
<span class="shade">
<em class="more">了解详情</em>
</span>
</a>
</li>
[/e:loop]
</ul>
<div class="pagelist">
<?php echo page_ajax($totalnum,$line,$page_line,$start,$page,$search)?>
</div>
新建完成后,在需要ajax的页面插入如下js代码(我是在首页使用):
<script>
function getlist(page,classid){
$.ajax({
url : '/e/action/ListInfo.php',
type:'GET',
data:{'ajax':1,'page':page,'classid':classid,'tempid':17,'line':'6'},
dataType : 'html',
success : function(data){
if(data){
$(".idx_news").html(data);
}else{
return false;
}
$(".pagelist a").click(function(){
var page = $(this).attr('data');
getlist(page,27);
});
}
});
}
getlist(0,27);
</script>
tempid是ajax列表模板的id,要对应上去,idx_news是对应的class,否则调不出出来,这个地方要注意,然后,在你需要显示列表的地方,插入如下代码
<div class="idx_news">
<div class="idx_titbox">
<span class="tit">新闻资讯</span>
</div>
<ul class="idx_pro_list clearfix">
[e:loop={27,6,0,0}]
<li>
<a href="<?=$bqsr['titleurl']?>">
<img src="<?=$bqr['titlepic']?$bqr['titlepic']:'/e/data/images/notimg.gif'?>" alt="<?=$bqr['title']?>" class="img"/>
<h6 class="title ellipsis"><?=$bqr['title']?></h6>
<span class="shade">
<em class="more">了解详情</em>
</span>
</a>
</li>
[/e:loop]
</ul>
<div class="pagelist">
<a href="javascript:" class="prev bid" data="0"><</a>
<a href="javascript:" class="active" data="1">1</a>
<a href="javascript:">2</a>
<a href="javascript:">3</a>
<a href="javascript:">...</a>
<a href="javascript:">10</a>
<a href="javascript:">></a>
</div>
</div>
部分内容来源于网络,如有侵权请联系删除::狂人日记 » 帝国cms实现列表ajax分页