2014-07-11 81 views
1

版本:丰富:dataTable的columnClasses属性发出

的RichFaces 4.3.5

的Apache MyFaces的2.1

问题:

我们迁移从JSF 1.2 JSF2。 如下面的代码所示,rich:dataTable将columnClasses属性用于样式列。 问题是columnClass没有重复应用。 也就是说,如果有四列,我们需要分别指定四个columnClasses属性值,如columnClasses=column1,column1,column1,column1.

这真的很烦人,因为我需要对所有列使用相同的columnClass。 我尝试使用空间作为列类如columnClasses=column1 column1,但没有成功。

有没有人面临同样的问题?除了手动指定columnClass之外,是否有任何解决方法?

代码:

<rich:dataTable id="userList" styleClass="style1" headerClass="header1" rowClasses="table_evenRow,table_oddRow" 
    columnClasses="column1,column1,column1,column1" value="#{bean.userList}" var="user"> 
          <f:facet name="header"> 
           <rich:columnGroup columnClasses="table_header"> 
            <h:column> 
             <h:outputText value="First Name" /> 
            </h:column> 
            <h:column> 
             <h:outputText value="Last Name" /> 
            </h:column> 
            <h:column> 
             <h:outputText value="Email" /> 
            </h:column> 
            <h:column> 
             <h:outputText value="Phone" /> 
            </h:column> 
           </rich:columnGroup> 
          </f:facet> 
          <h:column> 
           <h:outputText value="#{user.firstName}" /> 
          </h:column> 
          <h:column> 
           <h:outputText value="#{user.lastName}" /> 
          </h:column> 
          <h:column> 
           <h:outputText value="#{user.email}" /> 
          </h:column> 
          <h:column> 
           <h:outputText value="#{user.phoneNum}" /> 
          </h:column> 
</rich:dataTable> 
+0

嗯,这是一个错误。该属性不像描述的那样工作。 – Makhiel

+1

你的问题在其他地方。我经常使用它,它工作正常。例如'columnClasses =“,,,,rightalign,rightalign,rightalign”'。检查你的CSS。 –

+0

@VasilLukach:RichFaces的版本是否与4.3.5相同? – Atul

回答

1

我有同样的问题和瓦西Lukach在评论中提到,columnClasses="right,left,"...只增加了一个CSS类在DOM树的td元素。 例如: -

<td id="form:table:0:j_idt36" class="rf-dt-c right">2</td> 

为了有需要一些CSS效果:

.left { 
    text-align: left; 
} 

.right { 
    text-align: right; 
}