自定义标签--页面导航

java代码

public class PageTag extends TagSupport {
	private String bean;

	@Override
	public int doEndTag() throws JspException {
		// 通过上下文获得请求对象属性
		PageBean pageBean = (PageBean) this.pageContext.getRequest()
				.getAttribute(bean);
		StringBuffer sb = new StringBuffer();
		sb.append("<div class='page-bar'><ul><li><label>共"
				+ pageBean.getTotalCount() + "条记录 "
				+ pageBean.getCurPage() + "/" + pageBean.getTotalPage()
				+ "页</label>");
		if (pageBean.isPre()) {
			sb.append("<a href='doUser?op=toPage&curPage=1'>首 页</a>");
			sb.append("<a href='doUser?op=toPage&curPage="
					+ (pageBean.getCurPage() - 1) + "'>上一页</a>");
		}
		if (pageBean.isNext()) {
			sb.append("<a href='doUser?op=toPage&curPage="
					+ (pageBean.getCurPage() + 1) + "'>下一页</a>");
			sb.append("<a href='doUser?op=toPage&curPage="
					+ pageBean.getTotalPage() + "'>最后一页</a>");
		}
		sb.append("<label class='page-go-form'>跳转至<input type='text' name='inputPage' id='inputPage' class='page-key'/>页<button type='button' class='page-btn' οnclick='jump_to(document.getElementById(\"inputPage\").value)'>GO</button>");
		sb.append("<script type='text/javascript'>function jump_to(num){var reg=/^\\d+$/;if(!reg.test(num)){alert('请输入正确的数字');}else{window.location='doUser?op=toPage&curPage='+num;}}</script>");
		sb.append("</label></li></ul></div>");
		try {
			this.pageContext.getOut().print(sb.toString());
		} catch (IOException e) {
			e.printStackTrace();
		}
		return super.doEndTag();
	}

	public String getBean() {
		return bean;
	}

	public void setBean(String bean) {
		this.bean = bean;
	}
}
配置文件

放在WEB-INF/tld/page.tld

<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
	<tlib-version>1.0</tlib-version>
	<jsp-version>2.0</jsp-version>
	<short-name>d</short-name>
	<tag>
		<name>rollPage</name>
		<tag-class>com.demo.web.tag.PageTag</tag-class>
		<body-content>jsp</body-content>
		<!-- JSP,empty表示能能包函内容的,scriptless,tagdependent -->
		<attribute>
			<!-- 标签名 -->
			<name>bean</name>
			<!-- 是否为可选属性 -->
			<required>true</required>
			<!-- 是否接受JSP表达示计算结果 -->
			<rtexprvalue>true</rtexprvalue>
		</attribute>
	</tag>
</taglib>
JSP页面的调用
<%@taglib uri="/WEB-INF/tld/page.tld" prefix="d" %>

<d:rollPage bean="userPage"></d:rollPage>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值