网站大量收购闲置独家精品文档,联系QQ:2885784924

nested标签库.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
nested标签库

C.5 nested标签库 nested标签库允许相对于一个对象来应用标签。可以使用嵌套属性仿真完全相同的功能(参见第10章的详细解释)。 不幸的是,对于一名程序员来说,嵌套标签库可能会感到好像一个临时凑合的鸡肋。例如,假定想要输出MyBean.getMyPropertyA .getMyPropertyB 的内容。 可能期望能够这样做: nested标签库提供了 bean:write 以及许多其他标签的替代。所以执行该任务的正确代码是: bean:write 的替代是 nested:write 。大部分嵌套标签库由替代标签组成。这些都是它们在其他标签库中的对应物的严格复制。 HTML标签的替代:checkbox、errors、file、form、hidden、image、img、link、messages、multibox、options、optionsCollection、password、radio、select、submit、text和textarea。 Bean标签的替代:define、message、size和write。 Logic标签的替代:empty、equal、greaterEqual、greaterThan、iterate、lessEqual、lessThan、match、messagesNotPresent、messagesPresent、notEmpty、notEqual、notMatch、notPresent和present。 因为这些标签是对其正本的严格复制,这里不再重复它们的功能。读者可以参考本附录中的原始标签。除了这些替代标签之外,嵌套标签库还有3个自己的标签需要说明。随后的小节就是完成这个任务。 C.5.1 针对nested标签库的Struts-EL标签 针对nested标签库没有Struts-EL标签。 注意 EL使能的标签是指那些允许使用EL表达式的标签。参看第10章的例子。 C.5.2 nest 这个标签允许嵌套被上升一级。位于当前 nested:nest 标签内部的所有的替代标签将取得和本标签的property属性指示的它们的基础对象的值。 1. 使用限制 无。但是明显地,为了能够运行,需要指定property属性。 2. 属性 仅仅有一个属性:property。它指示在当前隐含的基础对象上的属性,从该对象起,所有的子嵌套标签都会使用它作为基础对象。 3. 示例 假定想要在一个 html:form 内,比方说使用 bean:write 访问一个嵌套属性: 还可以这样使用 nested:nest 和标签: 在这两个代码片断中,隐含的基础对象都是由包围的 html:form 决定的。基础对象正好是与该表单关联的表单bean的实例。如果想要改变基础对象,必须使用 nested:root 。 4. 对应物 无。 C.5.3 writeNesting 这个标签用来将当前嵌套层次输出到响应流(即呈现后得到的HTML页面),或者使其作为一个页面作用域变量来访问。 1. 使用限制 无。 2. 属性 这个标签具有3个属性。 property:这个属性的值将原样地附加到嵌套层次的结尾,用一个点作为前缀。 id:当id被指定时,嵌套级不写出到最后的HTML页面,而是暴露为一个页面作用域字符串变量,id的值充当名称。 filter:这个属性取值为true或者false。如果为true,那么嵌套层次将被编码。例如,号() amp;不管Apache联机文档怎么说,URL编码不会执行,例如,空格不会被编码为%20%,等等。 这些属性最好以JSP例子来说明。 3. 示例 仅当与 nested:nest 标签一起使用时,使用writeNesting才有意义,如下面的例子: 在这个例子中,显示的HTML将包含文本: 如果我们使用了 nested:writeNesting id dummy/ ,那么输出将会是为空。这是因为输出没有被显示在页面中,而是创建了一个名为dummy的页面作用域变量。要显示它,需要使用一个嵌入到与定义该变量的 nested:writeNesting 相同嵌套层次的scriptlet。例如: 注意,如果将scriptlet放在不同的嵌套层次上,会得到一个错误: 最后,propertyattribute只是简单地附加给定的值至嵌套层次的结尾。所以代码片断: 在HTML页面上显示为: 4. 对应物 无。 C.5.4 root 这个标签用来指定一个基础对象。 使用root来指定一个与当前基础对象(同 html:form 标签内部)不同的基础对象,或者如果该对象还不存在,则定义一个基础对象(通常在 html:form 之外)。 1. 使用限制 无。但是明显地,为了能够运行,需要指定n

文档评论(0)

tiangou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档