2016-10-26 15 views
5

Używam jQuery multi datepicker w moim html. Muszę zmienić ustawienie ustawień datepicker dynamicznie tzn. Kiedy wybiorę "normalną" opcję w polu wyboru, wyłączę "Sobota" i "Niedziela" w moim kalendarzu, a kiedy wybiorę opcję "niestandardową" w polu wyboru, wyłączysz moje niestandardowe dni. Nie wiem, jak określić w moim kodzie. To jest mój kodDynamicznie dodawaj właściwość jQuery multidatepicker "addDisabledDates"

$('#datePick').multiDatesPicker({ 
    beforeShowDay: disableSpecificWeekDays, 
    // For disabling all "Sundays" 
    dateFormat: "d/m/yy", 
    maxDate: "+3m", 
    minDate: "-1m", 
    multidate: true, 
    addDisabledDates: my_array 
}); 

    function disableSpecificWeekDays(date) { 
    var theday = date.getDate() + '/' +(date.getMonth() + 1) + '/' + 
     date.getFullYear(); 
    var day = date.getDay(); 
    return [day != 0 && day != 6]; 
} 

Proszę ktoś pomoże mi go umieścić?

+0

Dlaczego nie można po prostu sprawdzić wartość swojego rozwijanym w disableSpecificWeekDays() metoda? Jeśli jest to "normalne", to po prostu zwróć [true] –

+0

@John: Czy mogę użyć metody zmiany wartości pola wyboru w metodzie disableSpecificWeekDays()? Czy ustawienie datepaksu zostanie ponownie zainicjowane po zmianie wartości pola wyboru? –

Odpowiedz

2

Zakładając masz rozwijana tak:

<select id="my-dropdown"> 
    <option value="normal">normal</option> 
    <option value="custom">custom</option> 
</select> 

Następnie wszystko co musisz zrobić, to:

function disableSpecificWeekDays(date) { 
    if ($('#my-dropdown').val() == 'normal') { 
     return [true]; 
    } 
    var theday = date.getDate() + '/' + (date.getMonth() + 1) + '/' + 
     date.getFullYear(); 
    var day = date.getDay(); 
    return [day != 0 && day != 6]; 
} 
Powiązane problemy