jsp自定义的一个分页标签

<%@ tag language="java" pageEncoding="UTF-8"%>
<%@taglib prefix="c"  uri="http://java.sun.com/jsp/jstl/core"%>
<%@ attribute name="currentPage" type="java.lang.Long" required="true"%>
<%@ attribute name="pageSize" type="java.lang.Long" required="true"%>
<%@ attribute name="pagerRange" type="java.lang.Long" required="true"%>
<%@ attribute name="totalPage" type="java.lang.Long" required="true"%>
<%@ attribute name="totalElement" type="java.lang.Long" required="true"%>
<%@ attribute name="formId" type="java.lang.String" required="true"%>
<%
	// http://blog.csdn.net/tomatozq/article/details/8215946
	long begin = Math.max(1, currentPage - pagerRange / 2);//循环显示分页
	long end = Math.min(begin + (pagerRange - 1), totalPage);//循环显示分页
	request.setAttribute("pageBegin", begin);
	request.setAttribute("pageEnd", end);
%>
<div class="col-sm-6">
<div id="pager" >
	<label>显示 
		<select size="1" onchange="javascript:gotoPage(<%=currentPage%>)" id="p_pageSizeSelect">
			<option value="10"  <c:if test="${pageSize==10}">selected</c:if>>10</option>
			<option value="25"  <c:if test="${pageSize==25}">selected</c:if>>25</option>
			<option value="50"  <c:if test="${pageSize==50}">selected</c:if>>50</option>
			<option value="100" <c:if test="${pageSize==100}">selected</c:if>>100</option>
		</select> 
	记录</label>
	|&nbsp;<label>共 ${totalElement} 记录&nbsp;|&nbsp;共${totalPage }页</label>
	</div ><!--#page  -->
</div>
<div class="col-sm-6">
	<div class="dataTables_paginate paging_bootstrap">
		<ul class="pagination">
			<%if (currentPage != 1){ %>
				<li class="prev "><a href="javascript:gotoPage(1)"><i class=" icon-double-angle-left "></i></a></li>
				<li class="prev "><a href="javascript:gotoPage(<%=currentPage - 1%>)"><i class=" icon-angle-left "></i></a></li>
			<%}else{ %>
				<li class="prev disabled"><a href="javascript:void(0)"><i class=" icon-double-angle-left "></i></a></li>
				<li class="prev disabled"><a href="javascript:void(0)"><i class=" icon-angle-left "></i></a></li>
			<%} %>
			<c:forEach var="i"  begin="${pageBegin }" end="${pageEnd }">
				<c:choose>
					<c:when test="${i == currentPage }">
						<li class="active"><a href="javascript:void(0)">${i }</a></li>
					</c:when>
					<c:otherwise>
						<li><a href="javascript:gotoPage(${i })" >${i }</a></li>
					</c:otherwise>
				</c:choose>
			</c:forEach>
			<%if (currentPage != totalPage){ %>
				<li class="next"><a href="javascript:gotoPage(<%=currentPage + 1%>)"><i class="icon-angle-right "></i></a></li>
				<li class="next "><a href="javascript:gotoPage(<%=totalPage%>)"><i class="icon-double-angle-right "></i></a></li>
			<%}else{ %>
				<li class="next disabled"><a href="javascript:void(0)"><i class="icon-angle-right "></i></a></li>
				<li class="next disabled"><a href="javascript:void(0)"><i class="icon-double-angle-right "></i></a></li>
			<%} %>
		</ul>
	</div><!-- dataTables_paginate paging_bootstrap -->
</div><!-- col-sm-6 -->

//命名为:page.tag

另一个页面叫x.jsp用法:

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ include file="/WEB-INF/jspf/taglibs.jspf" %>
//这个需要从后台传参过来,获取相应的值,
<tags:pager pagerRange="6"  totalElement="${totalElement }" pageSize="${pageSize}"  totalPage="${totalPage}" currentPage="${currentPage}" formId="queryForm"></tags:pager>

参考:// http://blog.csdn.net/tomatozq/article/details/8215946

时间: 2024-12-22 21:14:29

jsp自定义的一个分页标签的相关文章

jsp自定义分页标签

1.web工程的整体结构 2.Eclipse中tld文件的构建方法3.编码 package mytags; import java.io.IOException; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.TagSupport; public class PagerTag extends TagSupport { /** * */ private static final long serialV

JSP自定义分页标签TAG

首先我们需要在WEB-INF/tld/目录下创建page.tld文件 <?xml version="1.0" encoding="ISO-8859-1"?> <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>page</short-name> <u

一个简单的jsp自定义标签

学到了一个简单的jsp自定义标签,后面有更多的例子,会更新出来: 例子1: 步骤: 1.编写标签实现类: 继承javax.servlet.jsp.tagext.SimpleTagSupport; 重写doTag,实现在网页上输出: 2.在web-inf目录或其子目录下,建立helloword.tld文件,即自定义标签的说明文件 注意:标签处理类必须放在包中,不能是裸体类:不需要修改web.xml: //tld: tag lib description 标签库描述 java代码: package

jsp自定义标签分页

自定义标签分页大大简化了jsp页面的代码量,减少了代码的冗余,提高了代码的重用性. 第一步:建立分页实体page类 1 package com.soda.util; 2 /** 3 * @description 分页实体类 4 * @author line 5 * @time 2016年8月28日11:16:50 6 */ 7 public class Page { 8 private int pageSize;//每页记录per 9 private int totalSize;//总记录tot

自定义分页标签儿

这个前面也就是匆匆带过了,还是好好描述一番吧. 什么是自定义标签儿.就是在jsp页面中,我们自己生成定义的标签儿,可以处理一定的逻辑.所以本质上还是要有java代码来处理的. 自定义标签儿能够运行的三个要素: 1.对应的java处理程序. 2.tld标签儿语言定义 3.在.jsp文件中导入包儿,并且,在页面中使用. 那么在3中得到导入路径,通过3知道对应的tld文件,那么一定是在tld中有对应的java包的引入.这样三者构成一种连接关系,那么代码就能执行了. 下面以分页为例,来简单阐述这个自定义

JSP自定义标签渲染时报Illegal to flush错误

javax.servlet.ServletException:Illegal to flush within a custom tag 此错误是因为在JSP页面中的某一个自定义标签的doStartTag或doEndTag中用了out.flush,而其他的自定义标签没有导致.可以去掉out.flush. JSP自定义标签渲染时报Illegal to flush错误,布布扣,bubuko.com

讲解JSP自定义标签

一.基本概念 1.标签(Tag) 标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本.由于标签是XML元素,所以它的名称和属性都是大小写敏感的. 2.标签库(Tag library) 由一系列功能相似.逻辑上互相联系的标签构成的集合称为标签库. 3.标签库描述文件(Tag Library Descriptor) 标签库描述文件是一个XML文件,这个文件提供了标签库中类和JSP中对标签引用的映射关系.它是一个配置文件,和web.xm

JSP自定义标签开发入门《转》

JSP自定义标签开发入门 一般情况下开发jsp自定义标签需要引用以下两个包 import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; 首先我们需要大致了解开发自定义标签所涉及到的接口与类的层次结构(其中SimpleTag接口与SimpleTagSupport类是JSP2.0中新引入的). 目标1:自定义一个用表格显示用户信息的简单标签 效果图: 在jsp页面使用此自定义标签: 假设我们有一个UserInfo的javabean,那

javaweb学习总结(二十三)——jsp自定义标签开发入门

一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 package me.gacl.web.tag; 2 3 import java.io.IOException; 4 5 import javax.servlet.http.HttpServletRequest; 6 import javax.servlet.jsp.JspException; 7 import