繁体   English   中英

PrimeFaces:如何设置p:subtable列的宽度

[英]PrimeFaces: How to set the p:subtable column's width

我要在页面中呈现以下结构:

<p:dataTable value="#{bean.persons}" var="person">
    <p:subTable value="#{person.children}" var="child">
        <f:facet name="header">
            <h:outputText value="Person: #{person.name}" />
        </f:facet>
        <p:columnGroup type="header">
            <p:row>
                <p:column headerText="Name"/>
                <p:column headerText="Years" />
                <p:column headerText="Birth Date" />                
            </p:row>
        </p:columnGroup

        <p:column>
            <h:outputText value="#{child.name}" />
            <h:outputText value="#{child.years}" />
            <h:outputText value="#{child.birthDate}" />
        </p:column>
    </p:subTable
</p:dataTable

我希望这样打印:

在此处输入图片说明

但是不幸的是,即使我更改了“ p:column”标签中的“ width”,“ style”或“ styleClass”属性,这些宽度也始终是通过子表中的行宽度分布的:

在此处输入图片说明

我该如何解决? 我能解决这个问题吗?

将style / styleClass标记放在<p:columnGroup type="header">p:column

使用Primefaces 5.3,Mojarra 2.2进行了测试

<p:dataTable value="#{bean.persons}" var="person">
<p:subTable value="#{person.children}" var="child">
    <f:facet name="header">
        <h:outputText value="Person: #{person.name}" />
    </f:facet>
    <p:columnGroup type="header">
        <p:row>
            <p:column headerText="Name" style="width: 500px"/>
            <p:column headerText="Years" />
            <p:column headerText="Birth Date" />                
        </p:row>
    </p:columnGroup

    <p:column>
        <h:outputText value="#{child.name}" />
    </p:column>
    <p:column>
        <h:outputText value="#{child.years}" />
    </p:column>
    <p:column>
        <h:outputText value="#{child.birthDate}" />
    </p:column>
</p:subTable
</p:dataTable

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM