2017-02-23 3 views
2

Silverstripe에서 달력 선택 도구를 설정하여 과거의 날짜를 선택할 수 없습니까?Silverstripe calendar picker가 과거 날짜를 표시하지 않음

jQuery DatePicker를 사용한다고 말할 수는 있지만 과거 날짜를 제한하는 방법은 확실하지 않습니다.

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

답변

3

당신은 날짜 선택기로 구성 옵션을 전달할 수 있습니다

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 선택기를 알려줍니다. 데이터 속성을 사용하면 다른 구성을 선택기로 전달할 수 있습니다. 위의 경우에는 한 번에 3 개월을 표시합니다. 이것은 datepicker config로 전달됩니다.

datepicker 낙타의 경우 "numberOfMonths"설정은 'data-number-of-months'와 같은 하이픈으로 작성해야합니다.

도 참조하십시오. datepicker configuration

+0

고맙습니다. 이것은 완벽 해. – Craig

+0

몇 주 전에 힘들었습니다. 나는 서로 (도착 및 출발) 최소/최대 날짜를 설정해야하는 두 개의 선택 도구가 있습니다. 이것은 백엔드 유효성 검사를 대체하지는 않지만 사용자 친화적입니다. – wmk