<%
/*每页显示的条数(可以自己随便定义)*/
int pageSize = 3;
/*起始页(可以自己随便定义)*/
int startRow = 0;
/*如果判断的值是对的,那么将当前页的起始页一定不是0,那么我们就将起始页的指针指向这个起始页*/
if (request.getParameter("startRow") != null){
try{
startRow = Integer.parseInt(request.getParameter("startRow"));
}catch(Exception e){
/*如果在转化的过程中出现了异常,那么我就将这个起始页还之前startRow=0的首页*/
startRow = 0;
}
}
%>
***********************翻页:首页,上一页,下一页,末页**********************
<%--查询数据库中有多少条跟查询条件相符的信息 --%>
<sql:query var="selectCount" dataSource="${connectDBSource}">
我们要查询的sql,这个sql要和下面的要显示是的sql是一致的
</sql:query>
<%-- 翻页(除了用到了查询的selectCount根据你定义的更改外,其它的代码可以直接使用) --%>
<script type="text/javascript">
function turnPage(pageNum){
alert("翻页翻页啦翻页啦");
<%--设置首页 --%>
if (pageNum*1 == 0){
alert("首页");
window.location = "searchRKInfo.jsp?startRow="+pageNum+"&f="+new Date().getTime();
}
/*上一页*/
if(pageNum=="previous"){
if(<%=startRow%>==0){
alert("已经是第一页了");
return false;
}
pageNum = <%=startRow%>-<%=pageSize%>;
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}
/*下一页*/
if(pageNum=="next"){
/*处理下一页的问题(当数据库中有偶数条记录时)*/
if(${selectCount.rowCount}%<%=pageSize%>==0){
pageNum = (<%=startRow%> + <%=pageSize%>)==${selectCount.rowCount}?<%=startRow%>:(<%=startRow%> + <%=pageSize%>);
}
/*处理下一页的问题(当数据库中有奇数条记录时)*/
if(${selectCount.rowCount}%<%=pageSize%>!=0){
pageNum = (<%=startRow%> + <%=pageSize%>)>${selectCount.rowCount}?<%=startRow%>:(<%=startRow%> + <%=pageSize%>);
}
if(pageNum==<%=startRow%>){
alert("已经是最后一页了");
return false;
}
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}
/*末页*/
if(pageNum=="end"){
alert("末页");
var endNum = ${selectCount.rowCount}%<%=pageSize%>;
if(endNum==0){
pageNum = ${selectCount.rowCount}-<%=pageSize%>;
}
if(endNum!=0){
pageNum = ${selectCount.rowCount}-(${selectCount.rowCount}%<%=pageSize%>);
}
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}
}
</script>
***************翻页:跳转到 页******************************
<%-- 除了用到了查询的selectCount根据你定义的更改外,其它的代码可以直接使用 --%>
<script type="text/javascript">
function isNull(str){
var reg = /^\s*$/;
if(str=="" || reg.test(str)){
return true;
}
if(str==null || str=="null" || str=="undefined"){
return true;
}
return false;
}
/*跳到第几页*/
function jumpToPage(jumpToPage){
var pageNum;
/*upButton 当不添值时,点击跳转给以提示*/
if(isNull(document.getElementById("pageUp").value) && jumpToPage=="upButton"){
alert("跳转值不能为空");
return false;
}
/*downButton 当不添值时,点击跳转给以提示*/
if(isNull(document.getElementById("pageDown").value) && jumpToPage=="downButton"){
alert("跳转值不能为空");
return false;
}
/*当upButton填写正确,执行跳转操作*/
if(!isNull(document.getElementById("pageUp").value) && jumpToPage=="upButton"){
pageNum = document.getElementById("pageUp").value;
}
/*当downButton填写正确,执行跳转操作*/
if(!isNull(document.getElementById("pageDown").value) && jumpToPage=="downButton"){
pageNum = document.getElementById("pageDown").value;
}
if(pageNum<=0){
alert("您输入的页数小于指定的页数");
return false;
}
/*参数值大于指定的页数(当数据库总行数为偶数时)*/
if(${selectCount.rowCount}%<%=pageSize%>==0){
if(pageNum>(${selectCount.rowCount}/<%=pageSize%>)){
alert("您输入的参数大于指定的页数");
return false;
}
}
/*参数值大于指定的页数(当数据库总行数为奇数时)*/
if((${selectCount.rowCount}%<%=pageSize%>!=0)){
if(pageNum>parseInt(${selectCount.rowCount}/<%=pageSize%>)+1){
alert("您输入的参数大于指定的页数");
return false;
}
}
/*参数不是数字*/
if(!(/^\d+(\.\d+)?$/).test(pageNum)){
alert("请输入正确的跳转页(参数应为数字类型)");
}else {
window.location = "searchRKInfo.jsp?startRow=" + (pageNum*<%=pageSize%>-3) + "&f=" + new Date().getTime();
}
}
</script>
在我们要使用的分页的显示页面searchRKInfo.jsp中,我们要这样写(注意startRow,maxRows的使用,这样得出来的查询页面才是被分过页的)
<sql:query var="selectRKInfo" dataSource="${connectDBSource}" startRow="<%=startRow %>" maxRows="<%=pageSize %>">
<%=要查询的sql %>
</sql:query>
******************以上的方法被下面的程序调用***************************
<span onClick="turnPage(0)" style="cursor:pointer" class="title2">首页</span>
<span onClick="turnPage('previous')" style="cursor:pointer" class="title2">上一页</span>
<span onClick="turnPage('next')" style="cursor:pointer" class="title2">下一页</span>
<span onClick="turnPage('end')" style="cursor:pointer" class="title2">末页</span>
<span class="title2">跳至第
<input type="text" name="pageUp" id="pageUp" style="width:2em; height:1.4em">页 <input type="button" value="跳转" οnclick="return jumpToPage('upButton')"></span>
mysql中实现分页功能的是 mysql分页写法
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
MySQL百万级数据分页查询优化
MySQL优化
字段 分页查询 偏移量