-1

ヘッダーの列をマージする必要があります。そして、jsf dataTable に表示される 2 行のヘッダーがあります。そこで、dataTable の冒頭でこの種のものを使用しました。これは正常に機能しましたが、これにより、レンダリングされた条件が t:column 属性で無視されます (レンダリングされた属性に関係なくすべての列)。h:outputText タグの t:column 内に render 属性を配置しようとしましたが、無駄でした。

<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 に答える