jsp pager tag 精簡的例子

來源:互聯網
上載者:User

<%@page language="java" contentType="text/html; charset=GBK"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/"%>
<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
<%@ page import="displaytag.TestList,java.util.List"%>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/mycss.css"/>">
<%--
   這是一個jsp pager tag的例子。
   例子很簡單,可見使用jsp pager tag 實現分頁的代碼量很少。
 
  <pg:pager items="${resultSize}"  //結果總數
       maxPageItems="<%=5%>"   //每頁最多數
           maxIndexPages="<%=5%>"  //索引顯示數
           isOffset="<%=true%>"    //一般設定true
           url="/jsppager/jsppager.jsp" //點連結執行的action
     export="offset,currentPageNumber=pageNumber" //產生局部變數,一般是偏離量和當前頁數
     scope="request"
  >
  這裡傳給tag的資料包括:
   1,總頁數
   2,每頁記錄數
   3,索引數
   4,點索引執行的action
  傳出的資料包括:
   1,位移量
   2,當前頁數
   
   
   <pg:page export="firstItem, lastItem"> //傳出當前頁的第一個下標,最後一個下標
   此標籤表示當前頁面的資訊
  
   索引頁面,可以更換很多。裡面主要是tag計算出的位移量。
  
   為了測試方便,本頁面對應的action就是自己。實際項目可以使用action,
  
   action的任務就是
     1,接收記錄集位移量(pager.offset),每頁最大記錄數。
     2,根據上面兩個資料得到一頁的記錄集合。並下傳給頁面。
     3,下傳記錄總數。
  
   頁面的任務:
     1,根據下傳總數初始化jsp page tag .
     2, 顯示下傳的集合.(本例用displaytag顯示)
--%>
<%
 String foffset = request.getParameter("pager.offset");
 int ioffset= Integer.parseInt(foffset);
 List list = new TestList(40,false); 
 List sublist = list.subList( ioffset,ioffset+5);
 request.setAttribute( "u2bmanpointlist", sublist );
 request.setAttribute("resultSize","40");
%>
<TABLE width=760 border=0 align=center cellPadding=0 cellSpacing=0 >
  <tr>
    <td width="704" height="300" align="right" >

  <pg:pager items="${resultSize}" 
       maxPageItems="<%=5%>"
           maxIndexPages="<%=5%>"
           isOffset="<%=true%>"
           url="/jsppager/jsppager.jsp"
     export="offset,currentPageNumber=pageNumber"
     scope="request"
  >
  <pg:page export="firstItem, lastItem">
   <div class="resultInfo">
    當前頁數:<strong>${currentPageNumber}</strong> ,
    本頁從第 <strong><%= firstItem %></strong> 條
    到第 <strong> <%= lastItem %></strong>條  
    總記錄數 <strong>${resultSize}</strong>條
   </div>
  </pg:page>
 

    <display:table width="100%" height="10" id="myitem" name="u2bmanpointlist" class="report">
 <display:column width="20%" sortable="true" title="名稱">${myitem.name}</display:column>
 </display:table>
 
   <jsp:include page="/google.jsp" flush="true"/><br>        
      <%--
      <jsp:include page="/alltheweb.jsp" flush="true"/><br>     
      <jsp:include page="/yahoo.jsp" flush="true"/><br>
      <jsp:include page="/altavista.jsp" flush="true"/><br>
      <jsp:include page="/lycos.jsp" flush="true"/><br>
      <jsp:include page="/texticon.jsp" flush="true"/><br>
   <jsp:include page="/simple.jsp" flush="true"/><br> 
      --%>
      </div></td>
  </pg:pager>
</table>
========================================================================

備忘:TestList就是一個List,裡面放了一個ListObject對象。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.