问题描述
已知,每页需要显示的数目。总条数从数据库动态查出,当前页数也可以通过前台传递。我现在需要最多页码跨度为5也就是首页6-10尾页首页7-11尾页这样都可以但如果不足5页,那么1234都显示出来。问需要多少个if判断啊
解决方案
解决方案二:
<%if(nowPage<1)nowPage=1;//非法参数修改if(nowPage>totalPage)nowPage=totalPage;//sameif(nowPage==1){//判断上一页链接的存在与否%><span><ahref="javascript:void(0);"class="grey">上一页</a></span><ahref="javascript:void(0);"class="select">1</a><%}else{%><span><ahref="javascript:gotoPage(<%=(nowPage-1)%>);">上一页</a></span><ahref="javascript:gotoPage(1);">1</a><%}//中间的显示逻辑nowPage>=7那么显示1...n-4n-3n-2n-1n//nowPage<7从2显示到nowPage//totalPage-nowPage>=7那么显示nn+1n+2n+3n+4...totalPage//totalPage-nowPage<7那么从nowPage显示到totalPageif(nowPage<7){for(inti=2;i<nowPage;i++){%><ahref="javascript:gotoPage(<%=i%>);"><%=i%></a><%}}else{%>...<%for(inti=nowPage-4;i<nowPage;i++){%><ahref="javascript:gotoPage(<%=i%>);"><%=i%></a><%}}if(nowPage!=1&&nowPage!=totalPage){%><ahref="javascript:void(0);"class="select"><%=nowPage%></a><%}if(totalPage-nowPage<6){for(inti=nowPage+1;i<totalPage;i++){%><ahref="javascript:gotoPage(<%=i%>);"><%=i%></a><%}}else{for(inti=nowPage+1;i<nowPage+5;i++){%><ahref="javascript:gotoPage(<%=i%>);"><%=i%></a><%}%>...<%}//中间的显示逻辑结束if(nowPage==totalPage){//判断下一页的链接%><%if(nowPage!=1)//评论只有一页的时候去除判断{%><ahref="javascript:void(0);"class="select"><%=nowPage%></a><%}%><span><ahref="javascript:void(0);"class="grey">下一页</a></span><%}else{%><ahref="javascript:gotoPage(<%=totalPage%>);"><%=totalPage%></a><span><ahref="javascript:gotoPage(<%=(nowPage+1)%>);">下一页</a></span><%}%>直接写在jsp页面上的。。。
解决方案三:
把楼上的代码写成自定义标签就不用在JSP中写了。那样看起来也比较清晰
解决方案四:
该回复于2010-12-03 11:04:39被版主删除
解决方案五:
该回复于2010-11-05 10:00:10被版主删除
解决方案六:
该回复于2010-11-05 10:00:11被版主删除
解决方案七:
麻烦..........................
解决方案八:
..........顶