2016-10-19 43 views
0

根据RichFaces的文档,我应该能够有一个标题和一个名为“产品”的页脚和含“东西”使用此代码单列得到一个列:丰富:列只显示方面

 <rich:dataTable styleClass="contained_width" rows="3"> 
      <rich:column> 

       <f:facet name="header"> 
        <h:outputText value="Product" /> 
       </f:facet> 

       something 

       <f:facet name="footer"> 
        <h:outputText value="Product" /> 
       </f:facet> 

      </rich:column> 
     </rich:dataTable> 

然而,行“东西”没有出现(我只得到页眉和页脚)。 我还没有发现任何其他人有这个问题... 我使用的是richfaces 4.5.17,Wildfly 10.1和JSF 2.2。

谢谢。

编辑: screen of what I get

+0

你的表中没有的元素('value'是空的),所以没有内容的呈现方式。这很正常。 –

+0

@EmilSierżęga,所以我只是把value =“”放在标签内,现在“something”正确显示。我不明白这是如何被认为是正常的(至少根据dataTable文档),但谢谢。 – pLesur

回答

0

你的表是空的,因为没有value属性。这是一个简单的机制:

  1. 构建头。
  2. 对于每一行构建内容(但没有行,因此不添加内容)。
  3. 建立页脚。

其中一个解决办法就是你已经使用了一个,增加value="",但我觉得你刚才不应该使用rich:dataTable是你知道该表将永远是空的。你可以用h:panelGrid来构建它。

而且可以使用noDataLabel属性,它显示是这样的:

<rich:dataTable noDataLabel="There are no products to display"> 
    <rich:column> 
     <f:facet name="header"> 
      <h:outputText value="Product" /> 
     </f:facet> 
     <f:facet name="footer"> 
      <h:outputText value="Product" /> 
     </f:facet> 
    </rich:column> 
</rich:dataTable> 

RichFaces - noDataLabel]

+0

我之所以没有把价值放在首位的原因是因为我想在做更多事情之前看看它会是什么样子。显然这是一个坏主意。谢谢。 – pLesur

+0

不客气! –