|
这几天一直都在看分页的事,各种研究,然后拿着我们开发写的分页来照着写也是出现各种这样那样的问题很是费解。
今天下午调试了好一会儿,居然自己就好了,jquery的分页插件真是有点抽筋的说。以下是具体的分页view、controller、model等部分截取的程序。
view:
<!--分页-->
<input type="hidden" id="pageCount" value="<{$number}>" />
<input type="hidden" id="currentPage" value="<{$currentPage}>" />
<input type="hidden" id="onepages" value="<{$onepages}>" />
<div class="pager_box clearfix" align="center">
<div class="pagination">
<a href="#" class="first" data-action="first">«</a>
<a href="#" class="previous" data-action="previous">‹</a>
<input type="text" readonly="readonly" data-max-page="40" />
<a href="#" class="next" data-action="next">›</a>
<a href="#" class="last" data-action="last">»</a>
<{if $onepages==10}>
<a href="#" class="select_status">all</a>
<{else}>
<a href="#" class="select_status">10</a>
<{/if}>
</div>
</div>
<!--分页-->
js:
// 分页
$(".pagination").jqPagination({
max_page :10,
current_page :1,
page_string :'Page {current_page} of {max_page}'
});
$('.pagination').jqPagination("destroy"); //清除之前的分页数据
$(function(){
var pagejson={
max_page :$("#pageCount").val(),
current_page :$("#currentPage").val(),
paged :function(page){
window.location.href="c_newlist?Title=<{$title}>&pageHidden="+page;
}
};
$(".pagination").jqPagination(pagejson);
$(".select_status").unbind('click');
$(".select_status").click(function(e) {
if($("#onepages").val()==10)
{
window.location.href="c_newlist?Title=<{$title}>&onepageed=";
}
else
{
window.location.href="c_newlist?Title=<{$title}>&onepageed=10";
}
}) })
controller:
这里其实很简单就是调用下model里的方法返回对应的结果就是
if($result['num']==0)
{
$message="no result was found";
}
else
{
if($onepages=='')
{
$pageCount=1;
}
else
{
$pageCount=$result['num']%$onepages ==0 ?floor($result['num']/$onepages):floor($result['num']/$onepages)+1;
}
}
if($pageCount==0)
{
$pageCount=1;
}
无非就是这里需要做下判断
model层中记得需要将所有的数据都放到数组中。