1

我使用两个<rich:calendar>s 来允许用户仅使用全天输入日期范围(从、到):

<rich:calendar
    id                  = "timeTo"
    value               = "#{listModel.rangeStopErrorTime}"
    datePattern         = "yyyy-MM-dd"
    valueChangeListener = "#{listController.filterFieldChanged}"
    enableManualInput   = "true"
/>

如果用户想指定一天,我的开始日期和结束日期都将是相同的 ( e.g., 2013-01-22T00:00:00)。我想将该to字段的默认时间设置为一天结束(例如,2013-01-22T23:59:59)。我尝试了defaultTime属性

<rich:calendar
    id                  = "timeTo"
    value               = "#{listModel.rangeStopErrorTime}"
    datePattern         = "yyyy-MM-dd"
    defaultTime         = "23:59:59"
    resetTimeOnDateSelect = "true"
    valueChangeListener = "#{listController.filterFieldChanged}"
    enableManualInput   = "true"
/>

但只有当我将 更改datePattern为包含时间 ( datePattern = "yyyy-MM-dd HH:mm:ss") 并且时间将显示在输入字段中时它才有效。

有没有办法指定默认时间而不向用户显示?

更新

  • rangeStopErrorTimejava.util.Date是一个带有标准 getter 和 setter的简单属性:

    private Date rangeStopErrorTime;
    
    public Date getRangeStopErrorTime()
    {
        return rangeStopErrorTime;
    }
    
    public void setRangeStopErrorTime( Date rangeStopErrorTime )
    {
        this.rangeStopErrorTime = rangeStopErrorTime;
    }
    
4

1 回答 1

2

正如 Luiggi Mendoza 所说,你应该在 bean 中这样做。在提交时设置时间。

于 2013-01-23T09:28:27.830 回答