有的时候,我们可能需要分页,但是又不想刷新页面或者不想更改点击上一页或下一页而引起的数据变动,这时候假分页可能会有帮助。比如之前做过考试的页面,提交之前需要预览一下,可是预览的时候也要能够编辑,而且可以返回到之前的页面,这时候可能需要把数据传递到后台并新建一张临时表,很是麻烦,但是如果用假分页就要省事太多了。
顾名思义,相对于真分页而言假分页就是不再向后台请求页数和每页显示多少数据。假分页就是一开始就已经加载所有数据(数据不多的情况下不会影响性能的,太多就很影响了),根据前台设置让他分成多少页每页显示多少条数据
废话不多说,上代码:
$(document).ready(function(){
var show_per_page = 30;
var number_of_items = $('.content').size();
var number_of_pages = Math.ceil(number_of_items/show_per_page);
$('#current_page').val(0);
$('#show_per_page').val(show_per_page);
var navigation_html = '<a class="previous_link" href="javascript:previous();">上一页</a>';
var current_link = 0;
while(number_of_pages > current_link){
navigation_html += '<a class="page_link" href="javascript:go_to_page(' + current_link +')" longdesc="' + current_link +'">'+ (current_link + 1) +'</a>';
current_link++;
}
navigation_html += '<a class="next_link" href="javascript:next();">下一页</a>';
$('#page_navigation').html(navigation_html);
$('#page_navigation .page_link:first').addClass('active_page');
$('.content').css('display', 'none');
$('.content').slice(0, show_per_page).css('display', 'block');
});
这个就是把每一题放在一个div中,然后统计div的数量,在设置每一页显示的div的数量,分页就搞定了,通用性非常强,只需要修改代码中的id等就可以了