97 lines
3.1 KiB
Plaintext
97 lines
3.1 KiB
Plaintext
|
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
|
|||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|||
|
<script type="text/javascript">
|
|||
|
function _go() {
|
|||
|
var pc = $("#pageCode").val();//获取文本框中的当前页码
|
|||
|
if(!/^[1-9]\d*$/.test(pc)) {//对当前页码进行整数校验
|
|||
|
alert('请输入正确的页码!');
|
|||
|
return;
|
|||
|
}
|
|||
|
if(pc > ${pb.tp}) {//判断当前页码是否大于最大页
|
|||
|
alert('请输入正确的页码!');
|
|||
|
return;
|
|||
|
}
|
|||
|
location = "${pb.url}&pc=" + pc;
|
|||
|
}
|
|||
|
</script>
|
|||
|
|
|||
|
|
|||
|
<div class="divBody">
|
|||
|
<div class="divContent">
|
|||
|
<%--上一页 --%>
|
|||
|
<c:choose>
|
|||
|
<c:when test="${pb.pc eq 1 }"><span class="spanBtnDisabled">上一页</span></c:when>
|
|||
|
<c:otherwise><a href="${pb.url }&pc=${pb.pc-1}" class="aBtn bold">上一页</a></c:otherwise>
|
|||
|
</c:choose>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<%--我们需要计算页码列表的开始和结束位置,即两个变量begin和end
|
|||
|
计算它们需要通过当前页码!
|
|||
|
1. 总页数不足6页--> begin=1, end=最大页
|
|||
|
2. 通过公式设置begin和end,begin=当前页-1,end=当前页+3
|
|||
|
3. 如果begin<1,那么让begin=1,end=6
|
|||
|
4. 如果end>tp, 让begin=tp-5, end=tp
|
|||
|
--%>
|
|||
|
<c:choose>
|
|||
|
<c:when test="${pb.tp <= 6 }">
|
|||
|
<c:set var="begin" value="1"/>
|
|||
|
<c:set var="end" value="${pb.tp }"/>
|
|||
|
</c:when>
|
|||
|
<c:otherwise>
|
|||
|
<c:set var="begin" value="${pb.pc-2 }"/>
|
|||
|
<c:set var="end" value="${pb.pc + 3}"/>
|
|||
|
<c:if test="${begin < 1 }">
|
|||
|
<c:set var="begin" value="1"/>
|
|||
|
<c:set var="end" value="6"/>
|
|||
|
</c:if>
|
|||
|
<c:if test="${end > pb.tp }">
|
|||
|
<c:set var="begin" value="${pb.tp-5 }"/>
|
|||
|
<c:set var="end" value="${pb.tp }"/>
|
|||
|
</c:if>
|
|||
|
</c:otherwise>
|
|||
|
</c:choose>
|
|||
|
|
|||
|
<c:forEach begin="${begin }" end="${end }" var="i">
|
|||
|
<c:choose>
|
|||
|
<c:when test="${i eq pb.pc }">
|
|||
|
<span class="spanBtnSelect">${i }</span>
|
|||
|
</c:when>
|
|||
|
<c:otherwise>
|
|||
|
<a href="${pb.url }&pc=${i}" class="aBtn">${i }</a>
|
|||
|
</c:otherwise>
|
|||
|
</c:choose>
|
|||
|
|
|||
|
|
|||
|
</c:forEach>
|
|||
|
<%-- 计算begin和end --%>
|
|||
|
<%-- 如果总页数<=6,那么显示所有页码,即begin=1 end=${pb.tp} --%>
|
|||
|
<%-- 设置begin=当前页码-2,end=当前页码+3 --%>
|
|||
|
<%-- 如果begin<1,那么让begin=1 end=6 --%>
|
|||
|
<%-- 如果end>最大页,那么begin=最大页-5 end=最大页 --%>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<%-- 显示点点点 --%>
|
|||
|
<c:if test="${end < pb.tp }">
|
|||
|
<span class="spanApostrophe">...</span>
|
|||
|
</c:if>
|
|||
|
|
|||
|
|
|||
|
<%--下一页 --%>
|
|||
|
<c:choose>
|
|||
|
<c:when test="${pb.pc eq pb.tp }"><span class="spanBtnDisabled">下一页</span></c:when>
|
|||
|
<c:otherwise><a href="${pb.url }&pc=${pb.pc+1}" class="aBtn bold">下一页</a></c:otherwise>
|
|||
|
</c:choose>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<%-- 共N页 到M页 --%>
|
|||
|
<span>共${pb.tp }页</span>
|
|||
|
<span>到</span>
|
|||
|
<input type="text" class="inputPageCode" id="pageCode" value="${pb.pc }"/>
|
|||
|
<span>页</span>
|
|||
|
<a href="javascript:_go();" class="aSubmit">确定</a>
|
|||
|
</div>
|
|||
|
</div>
|