AJAX数据分页展示

pager_build : function(act,query,res){
var pn = res.data.pn,
rn = res.data.rn,
tn = res.data.tn,
pager;
if(!tn){
pager = '';
}
var dataQuery = StringH.queryUrl(query);


var pns = Math.ceil(tn / rn);
var html = ['<div class="global-page">'];

var plink = function(i){
dataQuery.pn = i;
return '<a href="#" class="action" data-act="'+act+'" data-query="'+ObjectH.encodeURIJson(dataQuery)+'">'+(i+1)+'</a>';
}
if(pns < 12){
for(var i=0;i<pns;i++){
if(i == pn){
html.push('<span class="select">'+(pn+1)+'</span>');
}else{
html.push(plink(i));
}
}
}else if(pns > 11){
if (pn < 6){
for(var i=0;i<9;i++){
if(i < 9){
if(i == pn){
html.push('<span class="select">'+(pn+1)+'</span>');
}else{
html.push(plink(i));
}
}
}
html.push('<span class="global-page-break">...</span>');
html.push(plink(pns-1));
}else if(pn+5 < pns ){
html.push(plink(0));
if(pn == 6){
html.push(plink(1));
}else if(pn != 5){
html.push('<span class="global-page-break">...</span>');
}
for(var i =0;i<9;i++){
if(i == 4){
html.push('<span class="select">'+(pn+1)+'</span>');
}else{
html.push(plink(pn + i - 4));
}
}
if((pn + 7) == pns){
html.push(plink(pns-2));
}else if((pn+6) == pns){

}else{
html.push('<span class="global-page-break">...</span>');
}
html.push(plink(pns-1));
}else{
html.push(plink(1));
html.push('<span class="global-page-break">...</span>');
for(var i =0;i<9;i++){
if((pns-pn) + i == 9){
html.push('<span class="select">'+(pn+1)+'</span>');
}else{
html.push(plink(pns-9+i));
}
}
}
}
html.push('</div>');
if(pns > 1){
pager = html.join('');
}else{
pager = '';
}
W('#settingpageer').html(pager);
},
posted @ 2012-02-07 16:02 greengnn 阅读(...) 评论(...) 编辑 收藏