JSP的简便写法

 

 

1.定义一个公共的JSP:首先引入jstl,再定义一个项目的基本路径。

tag.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt"  prefix="fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>  <c:set var="baseurl" value="${pageContext.request.contextPath}/"></c:set>

 

 2.其他JSP页面通过静态包含引入上面的JSP内容

<%@ include file="/tag.jsp"%>

 

3. 也可以将公共的css与js引入连接抽出来放入一个JSP中

cssJs.jsp

 

<script type="text/javascript" src="${baseurl}/js/jquery.min.js"></script>
<script type="text/javascript" src="${baseurl}/bs/js/bootstrap.js"></script>
<link rel="stylesheet" href="${baseurl}/bs/css/bootstrap.css"/>

<!--分页-->
<link rel="stylesheet" type="text/css" href="${baseurl}/controls/easyUI/themes/default/easyui.css"/>
<script src="${baseurl}/controls/easyUI/easyui-lang-zh_CN.js"></script>
<link rel="stylesheet" href="${baseurl}/controls/easyUI/themes/icon.css"/>
<script type="text/javascript" src="${baseurl}/controls/easyUI/jquery.easyui.min.js"></script>


<!--复杂时日-->
<link rel="stylesheet" type="text/css" media="all" href="${baseurl}/controls/calendar/daterangepicker-bs3.css"/>
<script type="text/javascript" src="${baseurl}/controls/calendar/moment.js"></script>
<script type="text/javascript" src="${baseurl}/controls/calendar/daterangepicker.js"></script>

<!--日历-->
<link rel="stylesheet" href="${baseurl}/controls/calendar/pikaday.css">
<script src="${baseurl}/controls/calendar/pikaday.js"></script>


<script src="${baseurl}/js/menu.js"></script>


<link rel="stylesheet" href="${baseurl}/css/public/indexpublic_style.css"/>

<script type="text/javascript" src="${baseurl }/controls/jedate/jquery.jedate.js"></script>
<script type="text/javascript" src="${baseurl }/js/dateformat.js"></script>
<link type="text/css" rel="stylesheet" href="${baseurl }/controls/jedate/skin/jedate.css">

 

 

 

 

4.其他页面中引用

注意:先引入tag.jsp再引入   其他使用baseurl的jsp

 

 

好处:只用引入上面的tag.jsp便可使用jstl与${baseurl}获取项目名字。

 

 

--------------页面中编写一个全局变量记录项目名字,在JS文件中可以用全局变量代替项目名字(便于写路径)------------------------

 

JSP中:

<script type="text/javascript">
    var contextPath = "${pageContext.request.contextPath}";
</script>

 

 

JS中写路径的时候比如:

    $.ajax({
        url : contextPath + '/findExam_findExamEmployeeByExamId.action',
        data : {
            "examId" : examId
        },
        type : 'POST',
        async : true,
        dataType : 'json',
        success : showExamEmployeesModal,
        error : function() {
            alert("查询考试员工信息失败!!!")
        }
    });

 

 

 

也可以将tag.jsp上面进行改造:

    将记录项目名字的JS变量放在tag.jsp中,这样只用引入一个tag.jsp便可以在jsp中用${baseurl}表示项目根路径,在JS中用context获取项目根路径。

tag.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<c:set var="baseurl" value="${pageContext.request.contextPath}"></c:set>
<script type="text/javascript">
    /* 表示项目根路径,等价于   /Exam    */
    var contextPath = "${pageContext.request.contextPath}";
</script>

 

 

 

 参考:JSP中include指令和include动作浅析

 

  注意:静态引入相当于原封不动的将里面的内容包含进来。所以在被包含的页面不需要头和尾。

 

posted @ 2017-09-04 16:58  QiaoZhi  阅读(1037)  评论(0编辑  收藏  举报