Js-datepicker несколько входов с одним и тем же классом

Я использую этот плагин js-datepicker (https://www.npmjs.com/package/js-datepicker). Проблема в том, что у меня много полей, я хочу применить тот же тип средства выбора даты, поэтому предположил, что могу просто дать им всем класс, скажем, «год», однако он назначает его только первому полю ввода с этим классом. Есть ли способ применить ко всем входам с этим классом?

мой код:

const year = datepicker('.year', {
/*  formatter: (input, date, instance) => {
    const value = date.toLocaleDateString()
    input.value = value // => '1/1/2099'
  }*/
});

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

04FS 08.03.2019 12:29

Все они будут присвоены одной и той же константной переменной, поэтому она добавляется только к первому элементу. Вам нужно будет создать массив const и, возможно, различать элементы DOM чем-то более конкретным, например, значением id.

Davide Vitali 08.03.2019 12:29
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
41
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Возможно, вы можете просто использовать тип ввода «дата», чтобы получить быстрое рабочее решение. Преимущество: Формат выбирается исходя из текущих настроек пользователя, ничего форматировать не нужно.

<input type = "date" value = "2019-01-01">

Привет, Аарон, да, это то, как я сначала хотел это сделать, но, к сожалению, нет возможности настроить вывод, он должен перейти в определенный формат даты, который, вероятно, отличается от предпочтений браузера.

karl 08.03.2019 13:14
Ответ принят как подходящий

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

В основном что-то простое вроде этого должно делать,

var fields = document.querySelectorAll('.year');

fields.forEach(function(e) {
  datepicker(e, {})
});

Если вам нужны ссылки на экземпляры средства выбора даты, чтобы иметь возможность позже изменять параметры или что-то в этом роде, вы можете добавить их в массив внутри цикла.

Другие вопросы по теме