Как отключить определенные даты в средстве выбора даты MaterializeCSS

пытаясь отключить некоторые определенные даты в материале выбора даты, но не получая никакого способа реализовать эту функцию.


person PCmad80    schedule 11.08.2016    source источник


Ответы (5)


Средство выбора даты Materializecss — это просто оболочка для pickadate.js.

Итак, вы можете сделать таким образом:

$('.datepicker').pickadate({
  disable: [
    new Date(2015,3,13),
    new Date(2015,3,29)
  ]
})

Подробнее об этом можно прочитать здесь: http://amsul.ca/pickadate.js/date/#disable-dates

person GONG    schedule 11.08.2016
comment
Что делать, если у меня есть массив динамических обновлений в виде [10/2/2018, 29/6/2018]. Как бы я использовал этот список, чтобы отключить даты? - person naz786; 29.01.2018

Это пример того, как получить JSON разрешенных дат и показать их в хронометре.

var $input = $('.datepicker').pickadate()
var picker = $input.pickadate('picker');

picker.stop();
picker.start();

$.get("/dates",
    { id: this.value },
    function(data) {

        let value=[];
        $.each(data, function(key, element) {
            let fecha=new Date(element.date);
            value.push([fecha.getFullYear(),
                fecha.getMonth(),
                fecha.getDate()+1]);
        });
        picker.set('disable', value);
        picker.set('disable', 'flip');
        picker.open(false);

    });
person Elias González    schedule 07.07.2017

JavaScript Vanilla Отключить одну или несколько конкретных дат в Materialise – средство выбора даты

disableDayFn:function (date) {

            let disableListDate = [new Date('2018,12,5').toDateString(),new Date('2018,12,6').toDateString()];

                if(disableListDate.includes(date.toDateString())) {
                    return true
                }else{
                    return false
                }

            }

person Juan Sánchez    schedule 04.12.2018

var iptalTarih = ['04/18/2019', '05/20/2019']; // Your Dates Here in 'mm/dd/yyyy'

function disableDates(iptalTarih) {
    for (var i = 0; i < iptalTarih.length; i++) {
            var 
            fullDisabledDate    = new Date(iptalTarih[i]),
            getDisabledMonth    = fullDisabledDate.getMonth(),
            getDisabledDay      = fullDisabledDate.getDate(),
            getDisabledYear     = fullDisabledDate.getFullYear();

            $('.datepicker-modal.open').find('button.datepicker-day-button[data-year="'+getDisabledYear+'"][data-month="'+getDisabledMonth+'"][data-day="'+getDisabledDay+'"]').parent('td').addClass('is-disabled');

    }
}

и где инициализировать ваш datepicker:

    $('.datepicker').datepicker({
        // ... some your settings
        format          : 'mm/dd/yyyy',
        onDraw          : function() {disableDates(iptalTarih);}
        onOpen          : function() {setTimeout(function() {disableDates(iptalTarih)},300)},
    })
person Muhammed    schedule 06.04.2019

person    schedule
comment
Некоторые пояснения обычно приветствуются при переполнении стека. - person mkl; 08.05.2017