嵌套标记
当一个标记完全被另一个标记包围时,就说它是 嵌套的。
<outer:tag><inner:tag/></outer:tag>
|
将一个标记置于另一个标记之内无需特殊的设置或编码。可以在一个地方嵌套标记也可以在另一个地方嵌套标记本身。当然,有些标记设计成嵌套在其它标记内,但是却不需要任何东西来将标记显式地声明成是可嵌套的。
可以将 HTML 表、表行以及表单元格标记看成是嵌套标记。表标记中共享数据的示例是表的背景颜色( bgcolor
属性)。如果在表标记 <table bgcolor="blue">...</table>
内设置背景,除非个别标记重设了 bgcolor
属性(例如, <table bgcolor="blue">...<td bgcolor="red">...</td>...</table>
),所有行和单元格都将被设置成蓝色。
在被求值的内部标记的最基本的实现中,该标记可能仅仅只是外部标记的主体输入。然而,嵌套的标记可能也会引用包含它的标记(诸如父标记和祖父标记),允许被链接的类相互调用对方的方法和特性。这样,子标记和父标记就可以共享数据。
使用如下两种方法之一,嵌套标记就可以引用祖先标记:
TagSupport.getParent()
:返回父标记;也就是包围该标记的最里层标记。
TagSupport.findAncestorWithClass(from,class)
:在特定的标记层次结构未知或必须预先设置时所用。 findAncestorWithClass(from,class)
的参数分别表示从什么类开始以及搜索什么类。例如,在 HTML 表标记层次结构中,访问表标记的表单元格标记将类似于下面的样子:
TableTag table = (TableTag)findAncestorWithClass(this, TableTag.class);
|
如果标记处理程序是指定的类(这里是 TableTag.class
),其标记内没有包含当前标记,或者调用了 getParent()
但当前标记根本没有父标记,那么这两个方法都会返回 null。
分享到:
相关推荐
### jsp自定义嵌套标签:定义与使用详解 在JavaServer Pages(JSP)技术中,自定义标签是扩展其功能的一种强大手段。而自定义嵌套标签,则是在此基础上进一步提升灵活性和重用性的机制。本文将深入探讨自定义嵌套...
"j2ee12:jsp01:jsp页面嵌套java代码、的使用" 这个标题表明我们讨论的是JSP(JavaServer Pages)技术,特别是关于在JSP页面中如何嵌入Java代码以及如何使用`<%@ %>`指令标签。JSP是Java EE(现在称为Jakarta EE)...
- 在使用JSTL标签时,注意标签的嵌套和顺序,遵循正确的语法规则。 6. **应用场景** - 生成动态HTML内容,如列表、表格等。 - 控制页面逻辑,如条件判断、循环。 - 处理数据,如格式化输出、URL编码等。 通过...
子标记允许在一个自定义标签内部嵌套其他自定义标签,实现更复杂的逻辑。每个子标签都有独立的处理类和TLD定义,通过父标签处理类协调工作。 通过以上内容的学习,我们可以理解JSP自定义标签的基本原理,掌握创建和...
5. **标签的嵌套**:理解如何设计允许标签嵌套的逻辑,以便提高组件的复用性。 通过这个示例源码,初学者不仅可以学习到自定义标签的创建过程,还可以了解到如何在实际项目中应用它们。这个资源提供了详细的注释和...
本文将详细解析如何在JSP页面中嵌套使用Flex生成的SWF文件来创建自定义的系统拓扑图。 首先,Flex是一种基于ActionScript的开放源代码框架,用于构建具有交互性和动态效果的RIA。它允许开发者创建美观且功能丰富的...
嵌套标签允许在其他标签内部使用,它们有自己的内容区域,可以包含其他JSP元素,比如文本、JSP脚本或者更多的自定义标签。创建嵌套标签需要实现TagSupport类,它已经实现了Tag接口并提供了内容区域处理。此外,还...
5. **具有协作关系的标签**:可以相互嵌套并通信,共同完成复杂任务。 **自定义标签实例** 例如,我们可以创建一个迭代标签,用于遍历集合并打印每个元素。标签处理类会实现`javax.servlet.jsp.tagext.TagSupport`...
2. **Body标签**(Body Tag):除了可以处理简单的逻辑外,还可以处理标签体内的内容,即可以在标签内部嵌套其他标签或文本。 #### 三、创建自定义标签的步骤 1. **定义标签类**:首先需要创建一个Java类来实现特定...
- **全功能标签(Full-Featured Tag)**:对于需要控制标签生命周期和嵌套标签的场景,应实现`javax.servlet.jsp.tagext.Tag`接口,提供了更多的生命周期方法。 在实际开发中,自定义标签通常与Servlet容器(如...
- parent属性:保存父标签的处理类,用于处理嵌套标签。 - pageContext属性:提供对PageContext对象的访问,允许访问JSP上下文中的各种对象。 3. 在标签处理类中,pageContext和parent由JSP容器在调用doStartTag或...
s标签 如何将 list嵌套list 数据,然后再jsp页面去值!
### c标签遍历集合嵌套的List集合 在Java Web开发中,经常需要处理复杂的集合数据结构,并将其展示到前端页面上。对于嵌套的集合(例如:List中包含List),使用`c`标签库(JSTL)进行遍历是一种常见的做法。本文将...
- 在JSP页面中,你可以将分页标签嵌套在循环内,用于展示每页的数据。同时,提供用户点击的分页链接,通过AJAX或者页面跳转来改变当前页码。 6. **分页库的jar包** - 描述中提到了“包含jar包等一些信息”,这...
- **父标签**:对于嵌套的标签,标签处理程序可以访问其父标签的处理程序,这有助于不同标签之间的通信。 通过以上步骤,开发者可以创建出符合特定业务需求的自定义标签库,提高代码的复用性和模块化。理解并熟练...
Struts 是一个经典的Java Web开发框架,它提供了一套丰富的标签库来简化JSP页面的编写,特别是对于处理用户输入和展示数据。其中,HTML标签库是Struts中非常重要的一部分,它专门用于创建与Struts框架交互的HTML输入...
choose 标签用于控制嵌套 <c:when> 和 <c:otherwise> 动作的处理。示范代码:<c:choose> ${product.onSale}"> ... </c:when> <c:otherwise> .... </c:otherwise> 。choose 标签可以根据条件选择执行不同的动作。 ...
【JSP自定义标签开发使用】知识详解 JSP(JavaServer Pages)是一种动态网页技术,允许开发者在HTML页面中嵌入Java代码。在JSP中,自定义标签的使用可以增强代码的可读性和可维护性,使得复杂的业务逻辑更易于封装...