【问题标题】:Primefaces datatable Identify if the current column is of date typePrimefaces datatable 识别当前列是否为日期类型
【发布时间】:2016-04-13 11:56:59
【问题描述】:

我正在尝试使用 primefaces 制作一个通用数据表。 我想检查数据表的当前列是否为日期类型。如果是 Date 我想添加 DatetimeConverter -

这是我的代码 -

<ui:component>
<p:dataTable id="#{tableId}" value="#{data}" var="row" styleClass="stdTable vertLines fndTable vertLinesRightBorder" 
            style="table-layout:fixed; border-color: #dddddd;">
            <p:columns value="#{tableColumns}" var="column" sortBy="#{row[column.property]}">
                <f:facet name="header">
                    #{column.header}
                </f:facet>
                #{row[column.property]}
            </p:columns>
        </p:dataTable>
    </ui:component>

我将上面的xhtml调用如下-

<ui:include src="table.xhtml">
        <mbcpos:param name="tableId" value="#{me.id}hTabel1" />
        <mbcpos:param name="data" value="#{taskListBean.receivedOwnerTasks}" />
        <mbcpos:param name="tableColumns"
            value="#{me.columns}" />
    </ui:include>

我们能否识别列数据类型: 例如,#{row[column.property]} 等于日期 如果列是日期,我想格式化日期。

【问题讨论】:

    标签: jsf primefaces datatable


    【解决方案1】:

    您的列模型应该是您放置它所保存的数据类型以及其他与数据类型表示相关的内容(例如掩码、货币、对齐方式等)的位置。

    在页面上,对于每种数据类型(根据您的需要),在 p:columns 内 你应该这样做:

    <h:outputText rendered="#{column.dateType}" value="#{row[column.property]}">
        <f:convertDateTime pattern="dd/MM/yyyy"/>
    </h:outputText>
    

    【讨论】:

      猜你喜欢
      • 2013-12-04
      • 1970-01-01
      • 2019-09-03
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 1970-01-01
      • 2014-08-25
      • 2021-11-16
      相关资源
      最近更新 更多