( 該部分內(nèi)容是自寫(xiě)自用代碼)
Action部分:
//查看車(chē)輛信息(分頁(yè))
public ActionForward query(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
List list = carService.queryAll();
int pages = list.size();
System.out.println(pages);
request.getSession().setAttribute("pages", pages);//記錄總數(shù)放進(jìn)Session中
String a = request.getParameter("I");
String b = request.getParameter("J");
if(null==a&&null==b) {
request.getSession().setAttribute("v", 1);
request.getSession().setAttribute("v2", 5);
request.getSession().setAttribute("pages", pages);//記錄總數(shù)放進(jìn)Session中
int pageCount = carService.getPage(pages, 5);//初始化的時(shí)候有多少頁(yè)
request.getSession().setAttribute("PageCount", pageCount);
List syuser = carService.getApply(1, 5);//初始的時(shí)候默認(rèn)在第1頁(yè),第頁(yè)顯示5條
request.getSession().setAttribute("carsMessage", syuser);
return mapping.findForward("query");
}
else{
int i = Integer.parseInt(request.getParameter("I").trim());
int j = Integer.parseInt(request.getParameter("J"));
System.out.println(i+"...."+j);
int pageCount = carService.getPage(pages,j);//初始化的時(shí)候有多少頁(yè)
if(i<=pageCount&&i>0){
request.getSession().setAttribute("PageCount", pageCount);
request.getSession().setAttribute("v", i);
request.getSession().setAttribute("v2", j);
List syuser2 = carService.getApply(i, j);
request.getSession().setAttribute("carsMessage", syuser2);
return mapping.findForward("query");
}
else{
return mapping.findForward("query");
}
}
}
Service部分:
// 車(chē)輛查詢(xún)
public List queryAll() {
return this.getHibernateTemplate().loadAll(SrcmCar.class);
}
// 查詢(xún)出指定記錄數(shù)的信息
public List getApply(int i, int j) {
Criteria c = this.getSession().createCriteria(SrcmCar.class);
c.setFirstResult((i - 1) * j);
int p = queryAll().size();
int q = p / j + 1;
if (p % j != 0 && i == q) {
// c.setFetchSize(p - ((i - 1) * j));
c.setMaxResults(p - ((i - 1) * j));
}
else {
// c.setFetchSize(j);
c.setMaxResults(j);
}
List list = c.list();
return list;
}
// 初始化的時(shí)候用來(lái)判斷分頁(yè)的頁(yè)數(shù)
public int getPage(int i, int j) {
int mod = i % j;
int pageCount;
if (mod == 0) {
pageCount = i / j;
}
else if (i < j) {
pageCount = 1;
}
else {
pageCount = i / j + 1;
}
return pageCount;
}
頁(yè)面部分:
<tr>
<td colspan="8" align="right">
共有${pages}條記錄|總計(jì)
<span id="divid">${PageCount}</span>
頁(yè)|每頁(yè)顯示
<select id="page" onchange="cutPage()">
<c:if test="${v2==5}">
<option selected>5</option>
<option>10</option>
<option>15</option>
</c:if>
<c:if test="${v2==10}">
<option>5</option>
<option selected>10</option>
<option>15</option>
</c:if>
<c:if test="${v2==15}">
<option>5</option>
<option>10</option>
<option selected>15</option>
</c:if>
</select>條
|<a href="<%=basePath%>car.do?method=query&I=1&J=${v2}"">首頁(yè)</a>
|<a href="<%=basePath%>car.do?method=query&I=${v-1}&J=${v2}">上一頁(yè)</a>
|<a href="<%=basePath%>car.do?method=query&I=${v+1}&J=${v2}">下一頁(yè)</a>
|<a href="<%=basePath%>car.do?method=query&I=${PageCount}&J=${v2}">末頁(yè)</a>
|跳到第<input type="text" id="text1" size="2" value="${v}">頁(yè)
<input type="button" value="Go" onclick="cutPage()">
</td>
</tr>
javascript部分:
<script type="text/javascript">
var value1,c1,c2;
function cutPage(){
var op = document.getElementById("page");
for(var i =0;i < op.options.length;i++){
if(op.options[i].selected==true){
value1 = op.options[i].text;
}
}
var x = document.getElementById("text1").value;//第幾頁(yè)
var n = value1;//每頁(yè)顯示幾條
var m = ${pages};//記錄總數(shù)
if(n*x-m>n){
alert("沒(méi)有這么多頁(yè)!");
document.getElementById("text1").value = ${v};
return;
}
else {
location.href = "<%=basePath%>car.do?method=query&I="+x+"&J="+value1;
}
}
</script>
posted on 2007-10-29 12:23
末日風(fēng)情 閱讀(5438)
評(píng)論(3) 編輯 收藏 所屬分類(lèi):
struts