关于base标签
在前端HTML代码中,有一个标签,叫做base标签,这个标签可以设置整个网页的基础路径。
它既不是Java的语法,也不是JSP的语法。是HTML中的一个语法。是HTML中的一个标签。通常出现在head标签中。
<html>
<head>
<base href="http://localhost:8080/oa/">
</head>
<body>
<a href="ab/cd"></a>
</body>
</html>
在当前页面中,凡是路径没有以“/”开始的,都会自动将base标签中的路径添加到这些路径之前。
上面<body>标签中的<a>标签等同于:< a href="http://localhost:8080/oa/ab/def"></ a>
需要注意:在JS代码中的路径,保险起见,最好不要依赖base标签。JS代码中的路径最好写上全路径。
使用EL表达式 动态获取<base>标签的代码如下:
<base href="${pageContext.request.scheme}://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/">
解释说明:
${pageContext.request.scheme}获取的是http
${pageContext.request.serverName}获取的是localhost
${pageContext.request.serverPort}获取的是8080
${pageContext.request.contextPath}获取的是项目名 这里是/oa
这里有两点需要注意:
1.动态获取端口号和项目名之间没有空格。
2.项目名之后的斜杠"/"不能丢了。