如何使xPages计算字段日期转换器只显示今天的时间

how to make xPages computed field date converter to show only time for TODAY?

本文关键字:显示 今天 时间 转换器 日期 何使 xPages 计算 字段      更新时间:2023-09-26

我有一个xp:dataTable,其中一列已计算字段显示日期时间值。我想只显示当前日期的时间(今天)和所有其他日期的日期/时间。以下是我在computed field converter中输入的内容:

<xp:text escape="true" id="computedField1">
<xp:this.value><![CDATA[#{javascript:rowData.getColumnValue("START_DATE")}]]></xp:this.value>
<xp:this.converter>
    <xp:convertDateTime type="date">
        <xp:this.type>
            <![CDATA[${javascript:
                var inputDate = new Date(this.value);
                var todaysDate = new Date();
                if(inputDate.setHours(0,0,0,0) == todaysDate.setHours(0,0,0,0)){
                    return "time";
                } else {
                    return "both";
                }
            }]]>
        </xp:this.type>
    </xp:convertDateTime>
</xp:this.converter>

但它不起作用。什么好主意吗?我应该用CSS格式化它吗?由于

您不能单独计算每个值的converterDateTime的类型。代码不能在运行时执行。它只运行一次,因为代码以${...开头-不允许#{..

使用

  • 一个自定义转换器,用于创建日期/时间字符串或
  • 两个计算字段(日期/时间和仅时间字段),并使用渲染代码来决定显示哪一个。