如何使用jsf-rendered属性禁用嵌套标题html元素



我有一个JSF页面,其中包含:

<div class="tableCaption">
  <h2>Batch Details</h2>
</div>

以及定义.tableCaption h2 外观的CSS

我想将上面的div封装在具有"rendered"属性的JSF组件中,这样我就可以启用/禁用div,但找不到合适的组件。是否可以包装任意HTML组件并打开/关闭它们?

如果这不可能,有没有办法使用以某种方式使其使用已经为.tableCaption h2定义的CSS?

您可以使用<h:panelGroup layout="block">来获取HTML <div>元素。

<h:panelGroup layout="block" styleClass="tableCaption" rendered="#{condition}">
    <h2>Batch Details</h2>
</h:panelGroup>

或者,当使用JSP作为视图技术时,如果唯一的主体是纯HTML,则可以使用<f:verbatim>

<f:verbatim rendered="#{condition}">
    <div class="tableCaption">
        <h2>Batch Details</h2>
    </div>
</f:verbatim>

请注意,这个标签在JSF 2.0中已经被弃用,取而代之的是Facelets

或者,当你使用Facelets作为视图技术时,<ui:fragment>应该做到:

<ui:fragment rendered="#{condition}">
    <div class="tableCaption">
        <h2>Batch Details</h2>
    </div>
</ui:fragment>

相关内容

  • 没有找到相关文章

最新更新