rich:日历和默认时间

时间:2013-01-22 06:39:46

标签: jsf calendar richfaces

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

<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")并且时间将显示在输入字段中时,它才有效。

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

更新

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

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

1 个答案:

答案 0 :(得分:2)

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