`
nancychengnan
  • 浏览: 3326 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

分页java jscript

 
阅读更多
package commn.pagination;

public class Pagination {
// curpage--当前所在页
private int curpage = 1;

// intTotalNum--记录总数
private int intTotalNum = 0;

// intLineNum--每页显示的记录数
private int pagenum = 0;

// liststep - 6
private int liststep = 8;

private String PREVIOUS_PAGE = "« 上一页";

private String NEXT_PAGE = "下一页 »";

public String getHref(int number) {
return "Javascript:goPage(" + number + ");";
}

public String goHref(int number) {
return "<a href=\"" + getHref(number) + "\">" + number + "</a>";
}

public String showPages() {
StringBuffer strBuf = new StringBuffer(512);
// 总页数
int pagecount = (intTotalNum / pagenum) + 1;
if ((intTotalNum % pagenum) == 0)
pagecount = intTotalNum / pagenum;
// 初始化值
if (curpage == 0) {
curpage = 1;
} else {
if (curpage <= 0) {
curpage = 1;
}
if (curpage > pagecount) {
curpage = pagecount;
}
}
strBuf.append("<div class=\"pagination\">");
// 显示上一页
if (curpage > 1) {
// 加上链接 curpage-1
strBuf.append("<a href=\"" + getHref(curpage - 1)
+ "\" class=\"prev_page\" rel=\"prev start\">"
+ PREVIOUS_PAGE + "</a>");
} else {
strBuf.append("<span class=\"disabled prev_page\">" + PREVIOUS_PAGE
+ "</span>");
}
// 分页
// 按照liststep=6计算
if (pagecount <= liststep + 2) {
// liststep以内,全显示
// 1,2,3,4,5,6,7,8
for (int i = 1; i <= pagecount; i++) {
if (i == curpage) {
strBuf.append("<span class=\"current\">" + i + "</span>");
} else {
strBuf.append(goHref(i));
}
}
} else {
if (curpage < liststep) { // 左边 1...5
// 1,2,3,4,5,6,...,pagecount-1,pagecount
for (int i = 1; i <= liststep; i++) {
if (i == curpage) {
strBuf.append("<span class=\"current\">" + i
+ "</span>");
} else {
strBuf.append(goHref(i));
}
}
strBuf.append("<span class=\"gap\">&hellip;</span>");
strBuf.append(goHref(pagecount - 1));
strBuf.append(goHref(pagecount));
} else if (curpage > pagecount - liststep + 1) { // 右边
// 1,2,...pagecount-5,pagecount-4,pagecount-3,pagecount-2,pagecount-1,pagecount
strBuf.append(goHref(1));
strBuf.append(goHref(2));
strBuf.append("<span class=\"gap\">&hellip;</span>");
for (int i = pagecount - liststep + 1; i <= pagecount; i++) {
if (i == curpage) {
strBuf.append("<span class=\"current\">" + i
+ "</span>");
} else {
strBuf.append(goHref(i));
}
}
} else { // 中间
// 1,2,...,curpage-1,curpage,curpage+1,...,pagecount-1,pagecount
strBuf.append(goHref(1));
strBuf.append(goHref(2));
strBuf.append("<span class=\"gap\">&hellip;</span>");
int offset = (liststep - 4) / 2;
for (int i = curpage - offset; i <= curpage + offset; i++) {
if (i == curpage) {
strBuf.append("<span class=\"current\">" + i
+ "</span>");
} else {
strBuf.append(goHref(i));
}
}
strBuf.append("<span class=\"gap\">&hellip;</span>");
strBuf.append(goHref(pagecount - 1));
strBuf.append(goHref(pagecount));
}
}
// 显示下-页
if (curpage != pagecount) {
// 加上链接 curpage+1
strBuf.append("<a href=\"" + getHref(curpage + 1)
+ "\" class=\"next_page\" rel=\"next\">" + NEXT_PAGE
+ "</a>");
} else {
strBuf.append("<span class=\"disabled next_page\">" + NEXT_PAGE
+ "</span>");
}
strBuf.append("</div>");
return strBuf.toString();
}

public static void main(String[] args) {
// TODO Auto-generated method stub
int intTotalNum = 900;
int curpage = 65;
int pagenum = 10;
Pagination page = new Pagination();
page.setIntTotalNum(intTotalNum);
page.setCurpage(curpage);
page.setPagenum(pagenum);
System.out.print(page.showPages());
}

public int getCurpage() {
return curpage;
}

public void setCurpage(int curpage) {
this.curpage = curpage;
}

public int getIntTotalNum() {
return intTotalNum;
}

public void setIntTotalNum(int intTotalNum) {
this.intTotalNum = intTotalNum;
}

public int getListstep() {
return liststep;
}

public void setListstep(int liststep) {
this.liststep = liststep;
}

public int getPagenum() {
return pagenum;
}

public void setPagenum(int pagenum) {
this.pagenum = pagenum;
}
}





----html

<HTML>
<HEAD>
<TITLE> 分页测试 </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<!-- 显示样式 -->
<style type="text/css">

BODY {
FONT-SIZE: 12px; COLOR: black; LINE-HEIGHT: 1.5; FONT-FAMILY: Arial, sans-serifarial, Verdana, Helvetica; TEXT-ALIGN: left
}
.pagination {
PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FLOAT: right; PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
.pagination A {
BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #006699; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none
}
.pagination A:link {
BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #006699; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none
}
.pagination A:visited {
BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #006699; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none
}
.pagination A:hover {
BORDER-RIGHT: #006699 1px solid; BORDER-TOP: #006699 1px solid; BORDER-LEFT: #006699 1px solid; COLOR: #000; BORDER-BOTTOM: #006699 1px solid; TEXT-DECORATION: none
}
.pagination A:active {
BORDER-RIGHT: #006699 1px solid; BORDER-TOP: #006699 1px solid; BORDER-LEFT: #006699 1px solid; COLOR: #000; BORDER-BOTTOM: #006699 1px solid; TEXT-DECORATION: none
}
.pagination SPAN.current {
BORDER-RIGHT: #006699 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #006699 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #006699 1px solid; COLOR: #fff; PADDING-TOP: 2px; BORDER-BOTTOM: #006699 1px solid; BACKGROUND-COLOR: #006699
}
.pagination SPAN.disabled {
BORDER-RIGHT: #eee 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #eee 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #eee 1px solid; COLOR: #ddd; PADDING-TOP: 2px; BORDER-BOTTOM: #eee 1px solid
}
//-->
</STYLE>
<div class="pagination"><a href="Javascript:goPage(64);" class="prev_page" rel="prev start">&laquo; 上一页</a><a href="Javascript:goPage(1);">1</a><a href="Javascript:goPage(2);">2</a><span class="gap">&hellip;</span><a href="Javascript:goPage(63);">63</a><a href="Javascript:goPage(64);">64</a><span class="current">65</span><a href="Javascript:goPage(66);">66</a><a href="Javascript:goPage(67);">67</a><span class="gap">&hellip;</span><a href="Javascript:goPage(89);">89</a><a href="Javascript:goPage(90);">90</a><a href="Javascript:goPage(66);" class="next_page" rel="next">下一页 &raquo;</a></div>
<BODY>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics