设置dataTable中所有列的宽度

问题描述:

我使用JSF2.0在JSF页面中使用dataTable以表格格式显示数据。以下是我的代码。设置dataTable中所有列的宽度

<h:dataTable id="patentBudgetList" var="patentBudgetList" value="#{PersonalInformationDataBean.budgetInfoList}" border="1" width="40%"> 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText value="Description" /> 
     </f:facet> 
     <h:outputText value="#{patentBudgetList.budgetTitle}"/> 
    </h:column> 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText value="Cost" /> 
     </f:facet> 
     <h:outputText value="#{patentBudgetList.budgetCost}"/> 
    </h:column> 
</h:dataTable> 

我要的是Description列于80%宽度和宽度设置列Cost的设置20%

任何想法如何做到这一点?

+0

http://*.com/questions/5112151/right-aligning-cell的可能的复制-content-in-a-datatable-column – Ravi 2012-07-19 18:42:12

+0

你可以发布你的数据表选项吗? – 2012-07-20 00:06:56

+0

@Ravi:你怎么能说它重复?如何链接会帮助我? – 2012-07-20 13:22:13

下面是我怎么没...

<h:dataTable id="patentBudgetList" var="patentBudgetList" 
value="#{PersonalInformationDataBean.budgetInfoList}" 
border="1" width="40%" 
columnClasses="setWidthOfFirstColumn,setWidthOfSecondColumn" 
> 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText value="Description" /> 
     </f:facet> 
     <h:outputText value="#{patentBudgetList.budgetTitle}"/> 
    </h:column> 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText value="Cost" /> 
     </f:facet> 
     <h:outputText value="#{patentBudgetList.budgetCost}"/> 
    </h:column> 
</h:dataTable> 

而且在CSS我有

.setWidthOfFirstColumn { 
    width: 80%; 
} 

.setWidthOfSecondColumn { 
    width: 20%; 
}