1.4. 模板标记
动态模板是模块化WEB页布局设计的强大手段。Struts模板标记库定义了自定义标记来实现动态模板。
1.4.1.插入标记
<template:insert>标记能够在应用程序的JSP页中插入动态模板。这个标记只有一个template属性,用来定义模板JSP页。要插入到模板的页是有多个<template:put>标记来指定的,而这些标记被定义为<template:insert>标记的主体内容。
1.4.2.放置标记
<template:put>标记是<template:insert>标记内部使用的,用来指定插入到模板的资源。属性如下:
属性描述content 定义要插入的内容,比如一个JSP文件或一个HTML文件direct 如果这个设置为true,由content属性指定的内容将直接显示在JSP上而不是作为包含文件Name 要插入的内容的名称Role 如果设置了这个属性,只有在当前合法用户具有特定角色时才能进行内容的插入。
26
1.4.3.获得标记
在模板JSP页中使用<template:get>标记能够检索由<template:put>标记插入到JSP页的资源。属性如下:
属性描述Name 由<template:put>标记插入的内容的名称Role 如果设置了这个属性,只有在当前合法用户具有特定角色时才能进行内容的检索
1.4.4.使用模板标记
首先编写一个模板JSP页,它将被所有的web页使用:
<html>
<%@ taglib uri=”/template” prefix=”template” %>
<head>
<title></title>
</head>
<body>
<table width=”100%” height=”100%” >
<tr height=”10%”>
<td>
<template:get name=”header”/>
</td>
</tr>
<tr height=”80%”>
<td>
<template:get name=”content”/>
</td>
</tr>
<tr height=”10%”>
<td>
<template:get name=”footer”/>
</td>
</tr>
</table>
</body>
</html>
我们将这个文件命名为template.jsp。这个文件使用<template:get>标记来获得由JSP页使用<template:put>标记提供的内容,并且将内容在一个HTML表格中显示出来。这三个内容是标题,内容和页脚。典型的内容JSP会是这样:
<%@ taglib uri=”/template” prefix=”/template” %>
<template:insert template=”template.jsp”>
<template:put name=”header” content=”header.html”/>
27
<template:put name=”content” content=”employeeList.jsp”/>
<template:put name=”footer” content=”footer.html”/>
</template:insert>
这个应用程序JSP页使用<template:insert标记来定义模板,然后使用<template:put>标记将特定内容名称指定的资源放到模板JSP页中。如果我们有上百个布局相同的页,但突然想改变这个模板,我们只需要改变template.jsp文件。
分享到:
相关推荐
新增功能列表:<br> 标记说明:+ 新增 * 修复<br> 1. + 小的改动和错误修复<br> 2. * 去掉小脸表情,过滤版主提交数据<br> 3. + FAQ 显示完全表情列表<br> 4. + FAQ 使用基于语言包技术<br> 5. + 模板缓存技术<br> 6....
新增功能列表:<br>标记说明:+ 新增 * 修复<br>1. + 小的改动和错误修复<br>2. * 去掉小脸表情,过滤版主... + 全新独创 B-Template 模板引擎<br>18. + 在线列表可以识别搜索引擎蜘蛛<br>19. + 通过程序发送文件防盗链
新增功能列表:<br> 标记说明:+ 新增 * 修复<br> 1. + 小的改动和错误修复<br> 2. * 去掉小脸表情,过滤... + 全新独创 B-Template 模板引擎<br> 18. + 在线列表可以识别搜索引擎蜘蛛<br> 19. + 通过程序发送文件防盗链
+ 全新独创 B-Template 模板引擎<br> 18. + 在线列表可以识别搜索引擎蜘蛛<br> 19. + 通过程序发送文件防盗链<br> 20. + 清空回复功能<br> 21. + ESMTP 发信<br> 22. + 无限用户等级<br> 23. + 可调整联盟论坛顺序...
+ 全新独创 B-Template 模板引擎<br> 18. + 在线列表可以识别搜索引擎蜘蛛<br> 19. + 通过程序发送文件防盗链<br> 20. + 清空回复功能<br> 21. + ESMTP 发信<br> 22. + 无限用户等级<br> 23. + 可调整联盟论坛顺序...
+ 全新独创 B-Template 模板引擎<br> 18. + 在线列表可以识别搜索引擎蜘蛛<br> 19. + 通过程序发送文件防盗链<br> 20. + 清空回复功能<br> 21. + ESMTP 发信<br> 22. + 无限用户等级<br> 23. + 可调整联盟论坛顺序...
FreeMarker适合作为MVC的视图组件,还能在模板中使用JSP标记库。 <html> <head> <title>Welcome!</title> </head> <body> <h1>Welcome ${user}!</h1> <p>Our latest product: <a href="${latestProduct....
<p>one</p> <div><p>two</p></div> <p>three</p> jQuery 代码: $("div > p"); 结果: [ <p>two</p> ] -------------------------------------------------------------------------------- 在文档的第一个表单...
布尔值:true或false,通常在<#if …>标记中使用 2、 hashes:充当其它对象的容器,每个都关联一个唯一的查询名字 具有一个唯一的查询名字和他包含的每个变量相关联。 3、 sequences:充当其它对象的容器,按...
<p>one</p> <div><p>two</p></div> <p>three</p> jQuery 代码: $("div > p"); 结果: [ <p>two</p> ] ________________________________________ 在文档的第一个表单中,查找所有的单选按钮(即: type 值为 radio ...
JXLS消息新版本2.10.0带有对JSR310,多行SQL,...如何使用玛文<dependency> <groupId>org.jxls</groupId> <artifactId>jxls-poi</artifactId> <version>2.10.0</version></dependency>Gradleimplementation 'org.jxl
<wc> HTML中的标记模板文字 ž安装安装npm i @vanillawc/wc-template 从NPM导入< script type =" module " src =" node_modules/@vanillawc/wc-template/index.js " > </ script > 从CDN导入< script...
artTemplate-3.0 新一代 javascript 模板引擎 目录 特性 性能卓越,执行速度通常是 Mustache 与 tmpl 的 20 多倍() 支持运行时调试,可精确定位异常模板所在语句() 对 NodeJS Express 友好支持 安全,默认对输出...
:hatching_chick: 直接在浏览器中使用时<600> 自闭合标签: <div> 组件: <${Foo}> (其中Foo是组件引用) 布尔属性: <div> 对JSX的改进 htm实际上采用了JSX样式的语法,更进一步! 以下是您免费获得的一些...
<li>${$index 1}-{$one}</li> <!--{/loop}--> <!--{include footer}--> {}作为模版引擎的开始和结束标记,如果{}内部使用php运算符、函数调用等复杂语句,则需在{前加$,正确输出: 1-alen 2-blen...
Map<String, TemplateModel> paramWrap = new HashMap<String, TemplateModel>( params); //OUT_LIST值为tag_list,在类DirectiveUtils中声明,将内容列表放入其中 paramWrap.put(OUT_LIST, DEFAULT_WRAPPER.wrap...
Verb.js javascript库文件网站关于Verb.js旨在以一种简单而强大的方式来增加简单javascript应用程序的动态性,同时,它... 主要动词位于类结构中,可以在HTML上进行操作的状态包含变量< template> < h1> {{ state.mess
标签模板标记说明:留空即可 是否开启同步登录:选择'是' 是否接受通知:选择'是'</p> <p>最后提交,提交之后,再返回到应用列表.然后再选择刚刚提交那个应用,点击编辑.</p> <p>把'应用的UCenter配置信息:'里边的代码复制...
template="" 而不是内联/<app>_<model>.html 通过在类型、ID、ID、过滤器前添加“data-inline-”前缀来支持非<inline> 标签 感谢 nathanborror 提供初始代码。 依赖 使用内联应用程序需要 。 用法 安装在 ...
Vue-多选 可能是没有jQuery的Vue.js 2.0最完整的选择解决方案。 文献资料 访问: 赞助商 金 银 青铜 特点 ...标记 ...> 95%的测试覆盖率 ...< template> < div> < multiselect xss=removed xss=removed> </ multi