Почему я не могу предварительно выбрать текущий месяц в выпадающем элементе select, когда я могу в выпадающем списке год? - PullRequest
1 голос
/ 13 февраля 2020

Я использую сторонний плагин jquery (https://github.com/NickBusey/jQuery-Date-Select-Boxes-Plugin), который предварительно заполняет выбранные элементы годом, месяцем и днем. В нем указано правильное количество дней для каждого месяца с учетом високосного года.

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

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

Мне удалось изменить год, но подобный код не влияет на месяц и день. selects.

Вот функции для изменения года и месяца:

function preset_year_select( element ) {
    var year = get_target_year(); // separate function that returns the year
    $(element).filter(function() {
        return $(this).text() == year;
      }).prop('selected', true);
}

function preset_month_select( element ) {
    var today = new Date();
    var monthname = get_month_name(today); // separate function that returns the month name
    $(element).filter(function() {
        return $(this).text() == monthname;
      }).prop('selected', true);
}

Эти селекторы находятся в модальном bootstrap. Я вызываю эти функции, когда модал открывается:

preset_year_select( $('#pto-entry-form--date-year option') );
preset_month_select( $('#pto-entry-form--date-month option') );

Я не получаю ошибок или что-то еще. Я вижу, что фильтр работает на месяц, если я console.log вывод. Он вернет истину в правильный месяц. Он просто не устанавливает выбранное свойство, как функция года.

Есть идеи, чего мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...