📄 pagetag.java
字号:
package com.pagedemo.taglib;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import com.pagedemo.common.PageResult;
import com.pagedemo.web.form.BaseForm;
public class PageTag extends TagSupport {
private String formName;
public String getFormName() {
return formName;
}
public void setFormName(String formName) {
this.formName = formName;
}
@Override
public int doEndTag() throws JspException {
try {
BaseForm baseForm = null;
if (formName != null && formName.trim().length() > 0) {
baseForm = (BaseForm) pageContext.getRequest().getAttribute(
formName);
if (baseForm == null) {
baseForm = (BaseForm) pageContext.getSession()
.getAttribute(formName);
}
if (baseForm != null) {
PageResult pageResult = baseForm.getPageResult();
StringBuffer buffer = new StringBuffer();
buffer.append("<div class='pageLink'>\r\n");
buffer
.append("共" + pageResult.getTotalRecord()
+ "条记录\r\n");
if (pageResult.isPre()) {
buffer
.append("<a href='javascript:page_go(1);'>首页</a>\r\n");
buffer.append("<a href='javascript:page_go("
+ (pageResult.getCurrent() - 1)
+ ");'>上页</a>\r\n");
}
if (pageResult.isNext()) {
buffer.append("<a href='javascript:page_go("
+ (pageResult.getCurrent() + 1)
+ ");'>下页</a>\r\n");
buffer.append("<a href='javascript:page_go("
+ (pageResult.getTotalPage())
+ ");'>末页</a>\r\n");
}
buffer.append("到");
buffer
.append("<select onchange='page_go(this.value);' name='pageResult.current' id='pageNo'>\r\n");
for (int i = 1; i <= pageResult.getTotalPage(); i++) {
buffer.append("<option value=" + i + " ");
buffer.append(pageResult.getCurrent() == i ? "selected"
: "");
buffer.append(">\r\n");
buffer.append(i + "</option>");
}
buffer.append("</select>\r\n");
buffer
.append("每页<input type='text' id='size' name='pageResult.pageSize' value='"
+ pageResult.getPageSize()
+ "' size='2'/>条记录\r\n");
buffer.append("</div>\r\n");
buffer.append("<script>\r\n");
buffer.append("function page_go(pageNo){\r\n").append(
"if(check()){document.forms[0].pageNo.value=pageNo;\r\n")
.append("document.forms[0].submit();\r\n}\r\n}\r\n");
buffer.append("function check(){\r\n");
buffer
.append(
"var size=document.forms[0].size.value;\r\n")
.append(
"if(size.length<1 || isNaN(size) || parseInt(size)<=0){\r\n")
.append("alert('请输入正确的数字');return false;\r\n")
.append("}document.forms[0].submit();\r\nreturn true;\r\n}\r\n");
buffer.append("</script>\r\n");
pageContext.getOut().println(buffer.toString());
}
}
} catch (IOException e) {
e.printStackTrace();
}
return this.EVAL_PAGE;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -