分页Bootstrap实现 - airycode

分页Bootstrap实现

<%@ include file="/init.jsp" %>

<script type="text/javascript" src="jquery-1.12.0.min.js"></script>

<script type="text/javascript" src="jquery-ui.min-1.11.4.js"></script>

<meta charset="utf-8" />

<link href="http://cdn.bootcss.com/bootstrap/4.0.0-alpha/css/bootstrap.min.css" rel="stylesheet">

<script src="http://cdn.bootcss.com/bootstrap/4.0.0-alpha/js/bootstrap.min.js"></script>

<style type="text/css">

.root-right {

float: right;

margin-top: 10px;

}

</style>

<ul class="pagination">

<%

Locale pagelocale = PortalUtil.getLocale(renderRequest);

Integer pageCount = (Integer)renderRequest.getAttribute("pageCount");

Integer pageNo = (Integer)renderRequest.getPortletSession().getAttribute("pageNo");

if(pageCount != null && pageNo != null){

if(pageCount > 1 && !pageNo.equals(Integer.valueOf(1))) {

%>

<li><a class="crm-page-previous" href=\'javascript:entityPage("<%=pageNo - 1%>")\'>&laquo;</a></li>

<% }

if(pageCount <= 10) {

for (int i = 0; i < pageCount; i++) {

if(Integer.valueOf(i+1).equals(pageNo)) {

if(!pageCount.equals(Integer.valueOf(1))){

%>

<li class="active"><a href=\'javascript:entityPage(<%=pageNo %>)\'><%=pageNo %></a></li>

<%

}

i = i+1;

if(pageNo.equals(pageCount))

break;

}

%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=i + 1 %>)\'> <%= i + 1 %> </a></li>

<%

}

} else if(pageCount <= 20) {

int l = 0;

int r = 0;

if(pageNo < 5) {

l = pageNo - 1;

r = 10 - l - 1;

}else if(pageCount-pageNo < 5) {

r = pageCount - pageNo;

l = 10 - 1 - r;

}else {

l = 4;

r = 5;

}

int tmp = pageNo - l;

for (int i = tmp; i < tmp + 10; i++) {

if(Integer.valueOf(i).equals(pageNo)) {

if(!pageCount.equals(Integer.valueOf(1))){%>

<li class="active"><a href=\'javascript:entityPage(<%=pageNo %>)\'><%=pageNo %></a></li>

<%

}

i = i+1;

if(pageNo.equals(pageCount)) break;

}

%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=i %>)\'> <%=i %> </a></li><%

}

} else if(pageNo < 7) {

for (int i = 0; i < 8; i++) {

if(Integer.valueOf(i+1).equals(pageNo)) {%>

<li class="active"><a href=\'javascript:entityPage(<%=pageNo %>)\'><%=pageNo %></a></li><%

i = i+1;

}

%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=i+1 %>)\'> <%=i+1%> </a></li><%

}

%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageCount - 1 %>)\'><%=pageCount - 1 %> </a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageCount %>)\'> <%=pageCount %> </a></li><%

} else if(pageNo > pageCount - 6) {%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=1 %>)\'> 1 </a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=2 %>)\'> 2 </a></li>

<%

for (int i = pageCount-8; i <pageCount ; i++) {

if(Integer.valueOf(i+1).equals(pageNo)) { %>

<%

i = i+1;

if(pageNo.equals(pageCount)) break;

}

%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=i+1 %>)\'> <%= i + 1 %></a></li>

<%

}

} else {%>

<li><a class="crm-page" href=\'javascript:entityPage(<%=1 %>)\'> 1 </a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=2 %>)\'> 2 </a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageNo - 2 %>)\'> <%=pageNo - 2 %></a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageNo - 1 %>)\'> <%=pageNo - 1 %></a></li>

<li class="active"><a href=\'javascript:entityPage(<%=pageNo %>)\'><%=pageNo %></a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageNo + 1 %>)\'> <%=pageNo + 1 %></a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageNo + 2 %>)\'><%=pageNo + 2 %></a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageCount - 1 %>)\'> <%=pageCount - 1 %></a></li>

<li><a class="crm-page" href=\'javascript:entityPage(<%=pageCount %>)\'> <%=pageCount %> </a></li>

<%

}

if(!pageNo.equals(pageCount) && pageCount > 1) {%>

<li><a class="crm-page-home" href=\'javascript:entityPage(<%=pageNo + 1 %>)\'>&raquo;</a></li>

<%

}

%>

&nbsp;&nbsp;

<div class="root-right">

<label>

<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.total")%>&nbsp;<%=pageNo.equals(Integer.valueOf(0)) ? 1 : pageCount %>&nbsp;<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.page")%>,

<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.current")%>&nbsp;<%=pageNo %>&nbsp;<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.page")%>

</label>

</div>

<%

}

%>

</ul>