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 @   QiaoZhi  阅读(1038)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示