-1

我必须合并标题的列。我有两行标题要显示在 jsf dataTable 中。所以我在dataTable的开头使用了一些这种东西。这很好用。但这会使 t:column 属性上的渲染条件被忽略。(所有列与渲染属性无关)。我尝试将渲染属性放在 t:column 中的 h:outputText 标记上,但徒劳无功。

<t:dataTable var="myvo" value=...............................>
<f:facet name="header">
<t:panelGroup><f:verbatim escape="false"> 
  <TR>   
<TH colspan="1" align="center" class="tableHeader">Title</TH>   
<TH colspan="1" align="center" class="tableHeader">myheader1</TH>   
<TH colspan="1" align="center" class="tableHeader">myheader2</TH>   
 </TR>   
</f:verbatim>
</t:panelGroup>   
</f:facet> 

<t:column rendered="#{!myvo.myflag}">
<f:facet name="header"><h:outputText value="Internal Header1"/></f:facet>
<h:outputText value="#{myvo.myContent1}" styleClass="BodyFont" /></t:column>
<t:column rendered="#{myvo.myflag}">
<f:facet name="header"><h:outputText value="Internal Header2"/></f:facet>
<h:outputText value="#{myvo.myContent2}" styleClass="BodyFont" /></t:column>
</t:column>
<t:column rendered="#{!myvo.myflag}">
<f:facet name="header"><h:outputText value="Internal Header3"/></f:facet>
<h:outputText value="#{myvo.myContent3}" styleClass="BodyFont" /></t:column>
</t:column>
<t:column rendered="#{myvo.myflag}">
<f:facet name="header"><h:outputText value="Internal Header4"/></f:facet>
<h:outputText value="#{myvo.myContent4}" styleClass="BodyFont" /></t:column>
</t:column>
<t:column rendered="#{!myvo.myflag}">
<f:facet name="header"><h:outputText value="Internal Header5"/></f:facet>
<h:outputText value="#{myvo.myContent5}" styleClass="BodyFont" /></t:column>
</t:column>
4

1 回答 1

0

我得到了错误。我在渲染条件下使用的变量是错误的(与我的 Java Bean 类中定义的变量不同)。但我不明白为什么它没有在 jsp 页面上抛出任何错误。

于 2012-09-17T16:54:44.993 回答