2014-05-12 12 views
5

Mam trudności z dodaniem klasy do daty w bootstrapie. Oto datepicker. enter image description hereDodać klasę do wielu/konkretnych dni w zbiorze danych programu startowego?

enter image description here

Co staram się osiągnąć to umieścić małą niebieską kropkę w terminie określonym ja. Zastanawiam się nad dodaniem klasy do daty. Jak mam to zrobić?

+0

Który fork bootstrap używasz? Czy możesz dodać link do wtyczki? – Praveen

+0

Musisz utworzyć krąg u góry: 3px; left: 3px; pozycja: absolutna; Każdego dnia –

+0

@Praveen, pobierałem go do naszego repozytorium. Nie mam pojęcia, z jakiego widelca używam bootstrapa. – Imat

Odpowiedz

26

zależności od datepicker używasz można zrobić coś takiego:

Większość z datą zbieracze mają opcję beforeShowDay. Możesz tutaj ustawić klasę, aby dodać dzień, który chcesz zmienić.

dla tego przykładu im przy http://eternicode.github.io/bootstrap-datepicker

przykładem, jak to zrobić można znaleźć tutaj: jsFiddle

Będziemy chcieli, aby umieścić daty chcesz wyróżnić/Mark do tablicy:

var active_dates = ["23/5/2014","21/5/2014"];

następnie należy wybrać opcję beforeShowDay sprawdzić daty przeciwko bieżącego dnia jest pokazane, a następnie zastosować klasę.

<input type="text" id="datepicker" />

$("#datepicker").datepicker({ 
    format: "dd/mm/yyyy", 
    autoclose: true, 
    todayHighlight: true, 
    beforeShowDay: function(date){ 
     var d = date; 
     var curr_date = d.getDate(); 
     var curr_month = d.getMonth() + 1; //Months are zero based 
     var curr_year = d.getFullYear(); 
     var formattedDate = curr_date + "/" + curr_month + "/" + curr_year 

     if ($.inArray(formattedDate, active_dates) != -1){ 
      return { 
       classes: 'activeClass' 
      }; 
     } 
     return; 
    } 

}); `

activeClass może być dowolną formą CSS. W moim przykładzie właśnie zmieniłem kolor tła. W twoim przykładzie możesz przesunąć obraz i zastosować go do dnia.

.activeClass{ 
    background: #F00; 
    } 
+0

Dziękuję! To bardzo pomaga. – Imat

+1

Czy można to zrobić z zakresem dat? To znaczy. podświetlić '20-04-2015' na' 24-04-2015', więc będzie to łącznie 5 dni. – haakym

+0

Dziękujemy! To naprawdę bardzo pomaga! –