【问题标题】:Silverstripe calendar picker to not show past datesSilverstripe 日历选择器不显示过去的日期
【发布时间】:2017-02-23 13:01:32
【问题描述】:

有没有办法将 Silverstripe 中的日历选择器设置为无法选择过去的日期?

据我所知,它使用 jQuery DatePicker,但我不确定如何限制过去的日期。

DateField::create("Date","Date")
            ->setAttribute('placeholder','eg 2017-01-01')
            ->setConfig('showcalendar', true),

【问题讨论】:

    标签: datepicker calendar silverstripe


    【解决方案1】:

    您可以将配置选项传递给日期选择器:

    DateField::create("Date","Date")
        ->setConfig('showcalendar', true)
        ->setConfig('min', date('Y-m-d'))
        ->setDescription('')
        ->setAttribute('data-number-of-months', 3);
    

    ->setConfig('min', date('Y-m-d')) 告诉 jQueryUI 选择器使用最小日期(今天)。使用数据属性,您还可以将其他配置传递给选择器,在上述情况下,它一次显示三个月。这将被传递给 datepicker 配置。

    请注意,datepicker 骆驼案例配置“numberOfMonths”必须使用连字符,如“data-number-of-months”。

    另见datepicker configuration

    【讨论】:

    • 非常感谢。这是完美的。
    • 几周前遇到了困难。我有两个选择器应该为彼此设置最小/最大日期(到达和离开)。这不会取代后端验证,但更加用户友好。
    猜你喜欢
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    • 2017-04-09
    相关资源
    最近更新 更多