本文实例分析了JSP页面文件中base标记用法。分享给大家供大家参考,具体如下:
我们在用IDE工具生成JSP页面时通常都包含下面的两段代码,
<%
String
path
=
request.getContextPath();
String
basePath
=
request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<head>
<base
href="<%=basePath%>">
</head>
它们绝对不是无用代码,详细如下:
base标记是一个基链接标记,是一个单标记。用以改变文件中所有连结标记的参数内定值。它只能应用于标记<head>与</head>之间。你网页上的所有相对路径在链接时都将在前面加上基链接指向的地址。
重要属性:
href---设定前缀的链接地址
target---设定文件显示的窗口,同a标记中的target
简单例子:
<html>
<head>
<base
href=http://localhost
target="_blank">
<meta
http-equiv="Content-Type"
content="text/html;
charset=gb2312">
<title>base标记</title>
<link
rel="Shortcut
Icon"
href="ani.CUR">
</head>
<body>
<a
href="x.htm"
target="_self">x.html</a>
<a
href="y.htm">y.html</a>
</body>
</html>
当点了链接后,跳出的文件是http://localhost/x.htm或http://localhost/y.htm,它就是在这些相对路径的文件前加上基链接指向的地址。如果目标文件中的链接没有指定target属性,就用base标记中的target属性。
常在框架结构中用,如左右两个框架,把左边的框架中文件里的连接都显示在右边的框架里。只要用base标记,把其target属性值写为右框架名称,这就不用再为左框架里的文件中的每一个连接都指定target属性。
当使用时,BASE
元素必须出现在文档的
HEAD
内,在任何对外部源的引用之前。
另外,如果页面转向某个Servlet,而Servlet里又是forward到的某个jsp页面,如果这时写相对路径就应该先找到Servlet的路径,也就是web.xml中配置的url-pattern中的路径,如:假设有个x.jsp放在webapplication根目录下,而主页index.jsp是提交到servlet上去的,由Serlet来分发forward到x.jsp,Servlet的url配置如下:
复制代码
代码如下:<url-pattern>/servlet/TestServlet</url-pattern>
那么Servlet完成forward转向后,如果没有<base
href="<%=basePath%>">
x.jsp中<script
type="text/javascript"
src="script/check.js"></script>就会失效,因为Servlet的访问路径为http://localhost/webapp/servlet/TestServlet那么web服务器会到http://localhost/webapp/servlet/script/下去找check.js此时这里肯定是没有这个文件的,所以,如果遇到这样的情况建议使用绝对路径就不会有错复制代码
代码如下:<script
type="text/javascript"
src="<%=path%>/script/check.js"></script>
希望本文所述对大家JSP程序设计有所帮助。
❷ jsp如何动态向head中加入标签
为什么要向head中加入标签呢?有意义吗?
<script type="javascript">
document.getElementsByTagName("head").InnerHTML="<>写上想加的标签就行了</>";
</script>
但是JS就不能写在head里了,否则就会被改掉
❸ 在jsp里的<meta http-equiv="Content-Type" content="text/html; charset=gb2312">的意思
meta标记的作用是向搜索引擎提供有关此网页的一些相关信息,其主要是放在<head>标记内,它是专一个非常重要属的标记,譬如它可以用来鉴别作者、设定页面格式、标注内容提要和关键字以及刷新页面等。几乎所有的网页里都可以看到类似这段html代码。
现在我来解释一下你给出的问题的各个代码的意思:
http-equiv 这个属性主要是回应给浏览器一些有用的信息,以便正常的显示网页内容。它包含很多属性,不单单是”Content-Type”属性,那么Content-Type的属性是表示设定页面使用的语言。
name属性:虽然你给出的代码里面没有name这个属性,但是name属性在这里也是很重要的,name属性可以设置网页的作者,关键字,搜索引擎机器人向导等
content属性主要根据http-equiv属性来指定对应的content的属性值,它可以包含的值也有很多,对应着name属性的改变
charset属性:这个是设置页面的语言的,gb2312是表示的语言是中文,如果你要使用英文语言,可以使用charset=iso-8859-1
其实还有很多属性,这里就不一一说明了,有需要知道其他的,站内pm我也行
❹ 在JSP中如何包含一个静态页面
JSP中的两种包含静态页面的方法
第一种:include指令:当JSP转换成Servlet时引入指定文件
<%@pagecontentType="text/html;charset=GB2312"language="java"errorPage=""%>
<%@includefile="head.jsp"%>
<%@includefile="body.jsp"%>
<%@includefile="tail.jsp"%>
第二种:<jsp:include>动作元素:当JSP页面被请求时引入指定文件
<%@pagecontentType="text/html;charset=GB2312"language="java"errorPage=""%>
<jsp:includepage="head.jsp"/>
<jsp:includepage="body.jsp"/>
<jsp:includepage="tail.jsp"/>
第二种方法可以很方便的用<jsp:param>来向所包含页传递参数,方法如下:
<%@pagecontentType="text/html;charset=GB2312"language="java"errorPage=""%>
<jsp:includepage="head.jsp"/>
<jsp:includepage="body.jsp">
<jsp:paramname="uid"value="username"/>
<jsp:paramname="pwd"value="password"/>
</jsp:include>
<jsp:includepage="tail.jsp"/>
❺ 在jsp中怎样加入css样式
在jsp中加入css样式,就跟html加入的方式一样,具体有以下三种方式:
1、 外部样式内
当样式需要应用容于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用<link>标签链接到样式表。<link>标签在(文档的)头部:
<head>
<link rel="stylesheet" type="text/css" href="path/myCss.css"/>
</head>
2、内部样式
当单个文档需要特殊的样式时,就应该使用内部样式表。可以使用<style>标签在文档头部定义内部样式表。
<head>
<style type="text/css">
样式
</style>
</head>
3、内联样式
当样式仅需要在一个元素上应用一次时, 要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style属性可以包含任何CSS属性。由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。请慎用这种方法
<div style="width:100px"></div>
内联样式的优先级最高,其次是内部样式,外部样式的优先级是最低的。
❻ 如何在jsp页面添加css样式
在jsp页面添加css样式的方法:
和html加入的方式一样,在head标签之内,title标签之外写<style></style>开闭标签,具体样式内容写到开闭标签之内。示例如下:
<head>
<title></title>
<style>.input{ color:#f00;}</style>
</head>
其中,<style>.span{ color : red;}</style>表示将span标签的内容置为红色。
(6)jsphead什么扩展阅读
上述加css样式的方法是内部样式,除了内部样式还有外部样式和内联样式。内联样式的优先级最高,其次是内部样式,外部样式的优先级是最低的。
1、 外部样式
当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,可以通过改变一个文件来改变整个站点的外观。每个页面使用<link>标签链接到样式表。<link>标签在(文档的)头部,例如:
<head>
<link rel="stylesheet" type="text/css" href="path/linkcss.css"/>
</head>
2、内联样式
当样式仅需要在一个元素上应用一次时, 要使用内联样式,需要在相关的标签内使用样式(style)属性。Style属性可以包含任何CSS属性。由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。例如:
<span style="hight:1000px"></span>