rich:dataTable columnClasses属性问题

时间:2014-07-11 11:56:51

标签: jsf-2 richfaces

版本:

RichFaces 4.3.5

Apache MyFaces 2.1

问题:

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

这真烦人,因为我需要为所有列使用相同的columnClass。 我尝试使用像columnClasses=column1 column1这样的columnClasses空格,但没有成功。

有人面临同样的问题吗?除了手动指定columnClasses之外,还有其他解决方法吗?

代码:

<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>

1 个答案:

答案 0 :(得分:1)

我有同样的问题,正如Vasil Lukach在评论中提到的那样,columnClasses="right,left,"...只在dom-tree中的td元素中添加了一个css类。 e.g:

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

为了产生效果,需要一些css:

.left {
    text-align: left;
}

.right {
    text-align: right;
}