goTag 簡單分頁標籤

goTag 自述
    迫於對web頁面記錄集做分頁處理,自己實現了這個用於分頁的標籤,與大家共享。
    這是一個簡單的web頁面分頁標籤。通過這個標籤可以將傳入的記錄集進行分頁顯示,你可以通過設置參數控制每頁顯示的記錄條數。用戶界面也較爲簡單實用,提供首頁、尾頁、上一頁、下一頁和直接跳轉方式轉向指定頁面展示您所需要的記錄集。
使用方法:
將go-1.0.jar放到你的WEB-INF/lib目錄下
在頁面引入標籤
<%@ taglib prefix="go" uri="http://www.zlex.org/tag/go"%>

可參考如下代碼使用:
<%
	List<String> list = new ArrayList<String>();
	for (int i = 1; i <= 100; i++) {
		list.add(String.valueOf(i));
	}
	request.setAttribute("list", list);
%>

<c:set var="goUrl" value="go.jsp?method=list" scope="request" />
<c:choose>
	<c:when test="${empty param.pageNo}">
		<c:set var="pageNo" value="1" scope="request" />
	</c:when>
	<c:otherwise>
		<c:set var="pageNo" value="${param.pageNo}" scope="request" />
	</c:otherwise>
</c:choose>
<go:go url="${goUrl}" pageNo="${pageNo}" pageNoName="${pageNo}" source="${list}" pageListName="${pageList}" pageSize="5"> 
	<div>
		<br />
		<c:forEach items="${pageList}" var="l">
			<c:out value="${l}" />
			<br />
		</c:forEach>
		<br />
	</div>
	<span>第<go:pageNo />頁,共<go:pageCount />頁</span> 
	<span>[<a href="<go:first />">首頁</a>]</span>
	<span>[<a href="<go:last />">尾頁</a>]</span> 
	<span>[<a href="<go:previous />">上一頁</a>]</span>
	<span>[<a href="<go:next />">下一頁</a>]</span> 
	<span>跳轉至第<go:select />頁</span> 
</go:go>

其中,url爲請求地址,pageNo爲當前頁號,pageNoName爲頁號參數名(可選,默認爲pageNo),source爲待分頁的源列表,pageListName爲分頁集合名(可選,默認爲pageList),pageSize爲每頁顯示記錄的最多條數(可選,默認爲10條記錄)。
當我們在Request請求中給定屬性"${url}"值爲http://localhost:8080/goTag/go.jsp?method=list,"${pageNo}"值爲1,如果設定的"${list}"總共有100條記錄,"${pageSize}"值爲5,即每頁顯示5條記錄,可生成如下頁面:

<div>
<br />
	1
	<br />
	2
	<br />
	3
	<br />
	4
	<br />
	5
	<br />
<br />
</div>
<span>第1頁,共5頁</span>	
<span>[<a href="go.jsp?method=list&amp;pageNo=1">首頁</a>]</span>
<span>[<a href="go.jsp?method=list&amp;pageNo=20">尾頁</a>]</span>
<span>[<a href="go.jsp?method=list&amp;pageNo=1">上一頁</a>]</span>
<span>[<a href="go.jsp?method=list&amp;pageNo=2">下一頁</a>]</span>
<span>跳轉至第<select
		οnchange="window.location.href='go.jsp?method=list&amp;pageNo='+this.value">
		<option value="1" selected="selected">1</option>
		<option value="2">2</option>
		<option value="3">3</option>
		<option value="4">4</option>
		<option value="5">5</option>
	</select>頁</span>

注意事項:
1.在設定go標籤屬性url的時候,請確保該值不會包含go標籤屬性pageNoName的值。
2.請不要在同一個頁面內使用1套以上的<go:go />標籤。
3.未對source參數做緩存處理,請避免使用大集合以免影響性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章