Задать вопрос
@nickname777

Не работает скрипт disabledDays?

Не работает вторая функция по выделению дат, когда убираю $(document).ready(function () работает все, НО язык календаря - английский, только при нажатии какой-либо кнопки меняется на русский. В чем ошибка?

jQuery(function ($) {
        $.datepicker.regional['ru'] = {
            closeText: 'Закрыть',
            prevText: '<Пред',
            nextText: 'След>',
            currentText: 'Сегодня',
            monthNames: [
                'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
                'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
            ],
            monthNamesShort: [
                'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
                'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
            ],
            dayNames: ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
            dayNamesShort: ['вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'сбт'],
            dayNamesMin: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
            weekHeader: 'Нед',
            dateFormat: 'mm.dd.yy',
            firstDay: 1,
            isRTL: false,
            showMonthAfterYear: false,
            yearSuffix: '',
            changeYear: true,
            changeMonth: true,
            yearRange: '2013:2020'
        };
        $.datepicker.setDefaults($.datepicker.regional['ru']);
        $("#datepicker").datepicker($.datepicker.regional["ru"]);
 
    });

        $(document).ready(function () {
        $("#datepicker").datepicker({
            numberOfMonths: [1, 1],
            showCurrentAtPos: 0,
            beforeShowDay: function(date) {
                for (i = 0; i < disabledDays.length; i++) {
                    if (date.getMonth() == disabledDays[i][0] - 1 && date.getDate() == disabledDays[i][1] && date.getFullYear() == disabledDays[i][2]) {
                        //return [true, 'highlight', tips[disabledDays[i][3]]];
                        return [true, "ui-state-active", disabledDays[i][3]];
                    }
                }
                return [true, ""];
            },
            onSelect: function(dateText, inst) {
                for (i = 0; i < disabledDays.length; i++) {
                    if (inst.selectedMonth == disabledDays[i][0] - 1 && inst.selectedDay == ("" + disabledDays[i][1]) && inst.selectedYear == disabledDays[i][2]) {
                        window.open(
                            hrefs[i],
                            '_blank'
                        );
                    }
                }
            }
        });
        });
  • Вопрос задан
  • 2250 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@nickname777 Автор вопроса
Заработало вот так :)

var disabledDays;
    var hrefs;

    $("#datepicker").datepicker({
        closeText: 'Закрыть',
        prevText: '&#x3c;Пред',
        nextText: 'След&#x3e;',
        currentText: 'Сегодня',
        monthNames: [
            'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
            'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
        ],
        monthNamesShort: [
            'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
            'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
        ],
        dayNames: ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
        dayNamesShort: ['вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'сбт'],
        dayNamesMin: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
        weekHeader: 'Нед',
        dateFormat: 'mm.dd.yy',
        firstDay: 1,
        isRTL: false,
        showMonthAfterYear: false,
        yearSuffix: '',
        changeYear: true,
        changeMonth: true,
        yearRange: '2013:2020',
        numberOfMonths: [1, 1],
        showCurrentAtPos: 0,
        beforeShowDay: function(date) {
            for (i = 0; i < disabledDays.length; i++) {
                if (date.getMonth() == disabledDays[i][0] - 1 && date.getDate() == disabledDays[i][1] && date.getFullYear() == disabledDays[i][2]) {
                    //return [true, 'highlight', tips[disabledDays[i][3]]];
                    return [true, "ui-state-active", disabledDays[i][3]];
                }
            }
            return [true, ""];
        },
        onSelect: function(dateText, inst) {
            for (i = 0; i < disabledDays.length; i++) {
                if (inst.selectedMonth == disabledDays[i][0] - 1 && inst.selectedDay == ("" + disabledDays[i][1]) && inst.selectedYear == disabledDays[i][2]) {
                    window.open(
                        hrefs[i],
                        '_blank'
                    );
                }
            }
        }
    });
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы