2010-03-31 24 views
0

海我正在生成页码基于currentpagelastpage使用jquery ...这是我的功能,因为我是新手我不知道它是如何做到的...迭代在jQuery中的锚似乎并没有工作

function generatePages(currentPage, LastPage) { 
    if (LastPage <= 5) { 
     var pages = ''; 
     for(var i=1;i<=5;i++) 
     { 
      pages += "<a class='page-numbers' href='#'>" + i + "</a>" 
     } 
     $("#PagerDiv").append(pages); 
    } 
    if (LastPage > 5) { 
     var pages = ''; 
     for (var i = 1; i <= 5; i++) { 
      pages += "<a class='page-numbers' href='#'>" + i + "</a>" 
     } 
     $("#PagerDiv").append(pages); 
    } 
} 

我想要的结果是这样

如果是第一页

istpage http://img156.imageshack.us/img156/2527/1pagel.jpg

如果是在中间,

Pager http://img98.imageshack.us/img98/7278/pagersy.jpg

如果这是最后一页,

lastpage http://img204.imageshack.us/img204/541/lastpage.jpg

我有lastPagecurrentPage值请帮助我得到这个...

回答

1

首先,你必须找到一个正确的算法,你想要做什么,你发布的功能表明你没有任何。

实现可能是逻辑:

  • currentPage - 2显示页码currentPage + 2(限于[1,末页])
  • 如果未显示页面1,在前面加上“1 ... “
  • 如果未显示lastPage,追加” ...... lastPage

,另外,你可以添加:

  • 如果currentPage大于1,在前面加上 “上一页”
  • 如果currentPage小于lastPage,追加 “下一步”

这对理论。现在,为实现,只需使用jPaginateanother pagination plugin for jQuery而不是...

+0

@ybo我不寻找一个插件PLZ ...我必须写一个函数,需要两个参数... ANY建议... – bala3569 2010-03-31 05:52:05

+0

@ bala3569,我只是给了你算法,我想看你先试着自己实现它。即使你不想使用插件,你也可以检查它们的源代码,看看它们是如何实现的...... d-scribe.de中的jQuery分页插件(首次在谷歌上发布)完全符合你的需求。 – ybo 2010-03-31 05:58:49

+0

确实使用JSON,但我为自定义分页(1.e)做了5个记录最初...并且我有'lastpage'值,可以为我生成链接 ... – bala3569 2010-03-31 06:13:48