将JSF呈现的属性应用于span

时间:2014-03-03 21:08:02

标签: jsf

我正在尝试将JSF呈现的属性应用于h:panelGroup中的span,但是span仍然呈现 - 下面是我正在使用的一些示例代码。

<span id="myId" rendered="#{myBean.rendered}" class="groupBox" style="left: 1px; top: 8px; height: 38px; width: 339px;"  />

由于

2 个答案:

答案 0 :(得分:7)

rendered属性仅由JSF组件识别,而不是由纯HTML元素识别。

所需代码的JSF等效项可由<h:panelGroup><h:outputText>表示。两者都生成HTML <span>元素。如果您需要<span>没有文字内容,就像问题一样,只需使用<h:panelGroup>

<h:panelGroup id="myId" rendered="#{myBean.rendered}" styleClass="groupBox" style="left: 1px; top: 8px; height: 38px; width: 339px;" />

如果您需要包含文字内容的<span>,请使用<h:outputText>。您可以在其value属性中指定文本内容。

或者,如果您确实需要自己出于某种原因自行写下简单的HTML <span>元素,那么您始终可以将rendered属性移动到<ui:fragment>包含整个HTML内容。

<ui:fragment rendered="#{myBean.rendered}">
    <span id="myId" class="groupBox" style="left: 1px; top: 8px; height: 38px; width: 339px;" />
</ui:fragment>

答案 1 :(得分:-1)

您也可以使用它:

<p:outputPanel style="display:block">
</p:outputPanel>

参考:https://forum.primefaces.org/viewtopic.php?t=723