JSP代码重用
1.JSP代码可以重用
2.如何重用jsp代码?
由于jsp的特殊性,写在一个页面的函数不能再别的页面使用,因此就需要把要重用的函数独立成一个文件,然后用 include 指令包含进jsp文件
3.方法:include
指令
建立jsp页面A,保存重用代码
在B页面引入A页面
示例:
<jsp:include page="A.jsp"/>
页面B也可以将参数传给页面A
<jsp:param name="jack" value="boy">
${param.jack}
示例代码:
demo02.jsp引入demo02_comm.sjp
demo02.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<jsp:include page="demo02_comm.jsp"></jsp:include>
我的demo02
</body>
</html>
demo02_comm.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
我是demo02_comm
</body>
</html>
demo02.sjp显示结果
JSP代码重用-分页代码
1.分页条工具
company-list.jsp
引用page.jsp
来实现分页代码重用
company-list.jsp
<div class="box-footer">
<jsp:include page="../common/page.jsp">
<jsp:param value="${path}/com/findAll.do" name="pageUrl"/>
</jsp:include>
</div>
page.jsp
<html>
<body>
<div class="pull-left">
<div class="form-group form-inline">
总共${pi.pages} 页,共${pi.total} 条数据。
</div>
</div>
<div class="box-tools pull-right">
<ul class="pagination" style="margin: 0px;">
<li >
<a href="javascript:goPage(1)" aria-label="Previous">首页</a>
</li>
<c:if test="${pi.pageNum != 1 }">
<li><a href="javascript:goPage(${pi.prePage})">上一页</a></li>
</c:if>
<c:forEach begin="1" end="${pi.pages}" var="i">
<li class="paginate_button ${pi.pageNum==i ? 'active':''}"><a href="javascript:goPage(${i})">${i}</a></li>
</c:forEach>
<c:if test="${pi.pageNum != pi.pages }">
<li><a href="javascript:goPage(${pi.nextPage})">下一页</a></li>
</c:if>
<li>
<a href="javascript:goPage(${pi.pages})" aria-label="Next">尾页</a>
</li>
</ul>
</div>
<form id="pageForm" action="${param.pageUrl}" method="post">
<input type="hidden" name="curr" id="curr">
<input type="hidden" name="pageSize" id="pageSize">
</form>
<script>
function goPage(page) {
document.getElementById("curr").value = page //curr=2
document.getElementById("pageSize").value = ${pi.pageSize} //后台传入
document.getElementById("pageForm").submit()
}
</script>
</body>
</html>