
已解决问题
谷歌huanmichel1用户在2016.05.02提交了关于“夏朗JSP分页显示如何实现”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-12-06T05:08:51。希望大家能够帮助她。详细问题描述及疑问:期待您的答案,感谢你,我会记得你对我的好的 !
详细问题描述及疑问:期待您的答案,感谢你,我会记得你对我的好的 !
1、m
select*fromta
tablenam
startPoint就是起始的位置-1;
**mb
则
2、jQuer
MySQL的limit关键字可以完成抽取一定范围(n,n
每页显示的个
f
$('body').
或宅两个参数都由用户指定的话,函数可以写成:
$('body
}
3、se
intpage=Integer.parseInt(req.g
一般一次显示10页左右,也就是假如现在在第52页,那么可选的页
计
ints
if(page>=
start=page/10*10;
}
有两个特殊情况:
①总**
②页数
这样会出现页数列表小于10的情况,也很容易处理,加if条件判断一下就好了。大致的代码如下:
inttotalPage=total/itemsPerPage;
if(total%itemsPerPage!=0){
totalPage+=1;
}
Vector<Integer>pageArr=newVector<Integer>();
intstart=1;
if(page>=10){
start=page/10*10;
}
int**m=start;
while(!(**m>totalPage||**m>start+10)){
pageArr.add(newInteger(**m));
++**m;
}
5、在jsp页面显示页数列表
通过4我们得到了一个计算后的页数列表pageArr,该列表说明针对当前页,我们应该展现哪些页数让用户可以直接点击。在servlet中将刚才的pageArr列表放入response对象中,同时放入page(当前页数)以及totalPage(最大页数)以帮助我们做一些判断。
<!--上一页按钮-->
<divid="pageControl">
<c:choose>
<c:whentest="${page!=1}">
<ahref="***.do?page=${page-1}"><inputtype="button"name="lastPage"value="上一页"/></a>
</c:when>
<c:otherwise>
<inputtype="button"disabled="true"name="lastPage"value="上一页"/><!--为了要那个灰掉的button-->
</c:otherwise>
</c:choose>
<!--页数列表-->
<c:forEachitems="${pageList}"var="item">
<c:choose>
<c:whentest="${item==page}">
<ahref="***.do?page=${item}"class="currentPage">${item}</a>
</c:when>
<c:otherwise>
<ahref="***.do?page=${item}">${item}</a>
</c:otherwise>
</c:choose>
</c:forEach>
<!--下一页按钮-->
<c:choose>
<c:whentest="${page!=totalPages}">
<ahref="***.do?page=${page+1}">
<inputtype="button"name="nextPage"value="下一页"/>
</a>
</c:when>
<c:otherwise>
<inputtype="button"disabled=truename="nextPage"value="下一页"/><!--为了要那个灰掉的button-->
</c:otherwise>
</c:choose>
<!--直接跳转-->
**${totalPages}页-向<inputtype="text"id="jumpTo"/>页<inputtype="button"value="跳转"onclick="jumpTo(${totalPages})"/>
</div>
使用到的js函数
functionjumpTo(maxPage){
varpage=$("#jumpTo").val();
if(page>maxPage||page<1){
alert("对不起,无法到达该页")
}else{
$('body').load('***.do?page='+page);
}
}
6、CSS增强效果
为了凸显我们现在所在的页数,在上面的代码中我们特意做了判断:
<c:whentest="${item==page}">
<ahref="***.do?page=${item}"class="currentPage">${item}</a>
</c:when>
这样,当前的页数就会被标记为currentPage类,如此一来,就可以在CSS文件中着重强调它了。比如:
.currentPage{
font-weight:bold;
color:#ff9a00;
}
或者再设置以下跳转页输入框的宽度
#jumpTo{
width:20px;
}
这样,当前页的页面就会被标记为粗体、橘色:
7、改进
用a标签的方法做链接虽然比较方便,不过会有下划线出现,感觉很不洋气。可以用css把它消除掉,或者hover时候加一些变化什么的。
#pageControla{
text-decoration:none;
}