2011-04-05 62 views
0

從我對Richfaces demo pagedocs的理解中,我應該能夠使用標準的HTML元素。如何在標準表上使用Richfaces皮膚?

此功能爲標準HTML表單元素提供樣式,以便與RichFaces常見的look'n'feel高度兼容。

今天我可能會被RF​​燒壞,但我不明白如何在常規元素上蒙皮。例如,如果我想要一個手工製作的表來匹配我還以爲看上RichFaces的表像這樣的工作:

我試圖皮膚沒有得到任何工作
<table class="rich-table"> 
     <tr class="rich-tr"> 
     <a4j:repeat value="#{myBean.elements}" var="e"> 
      <th class="rich-th" > 
            <h:outputText value="#{e.text}" /> 
          </th> 
        </a4j:repeat> 
      </tr> 
    </table> 

等元素,所以我覺得我以這種錯誤的方式去做。最終目標是讓標準的HTML元素融入,並且仍然允許將皮膚從blueSky換成emeraldGreen,而不改變特定元素。

回答

1

試試這個。將此上下文參數:org.richfaces.CONTROL_SKINNING添加到web.xml並將其設置爲'enable'。我不是100%確定它會將表格貼上標籤。如果沒有,您可以使用#{richSkin.any_param_name}手動爲表格蒙皮。

+0

我已啓用CONTROL_SKINNING。你能舉一個如何使用'richSkin' bean的例子嗎? – Adam 2011-04-06 16:30:47

+0

我可以在這裏找到一個使用richSkin bean的例子:http://www.packtpub.com/article/skin-customization-in-jboss-richfaces-3.3 – Adam 2011-04-06 16:38:20

+0

好,它是這樣的:#{richSkin。 panelBorderColor}。對不起,我不是很清楚。您可以使用任何皮膚參數。 – 2011-04-06 21:07:54

2

有問題 - RichFaces的不來「靜態表」標籤,並不提供,因爲「blablabla」(有些蹩腳的藉口;)的表自動剝皮,)。並且手動蒙皮非常糟糕。

解決辦法:用豐富columnGroup一起:柱使用富:dataTable中,提供了一些虛擬值豐富:dataTable的值= 「DummyStaticValue」),並使用富

你的組合只會被渲染一次(因爲dummyValue只是一個字符串),你可以得到你想要的任何表結構。

<rich:dataTable width="100%" value="DummyStaticValue"> 
    <f:facet name="header"> 
     <h:outputText value="myHeader" /> 
    </f:facet> 
    <rich:columnGroup> 
     <rich:column> 
      <h:outputText value="myValue1" /> 
     </rich:column> 
     <rich:column> 
      <h:outputText value="myValue2" /> 
     </rich:column> 
    </rich:columnGroup> 
    <rich:columnGroup> 
     <rich:column> 
      <h:outputText value="myValue3" /> 
     </rich:column> 
     <rich:column> 
      <h:outputText value="myValue4" /> 
     </rich:column> 
    </rich:columnGroup>