javascript — moment.js не может конвертировать текущий месяц в другой формат

Прямо сейчас я использую datetimepicker для начальная загрузка 4

Пока все хорошо. Я использую формат LLLL чтобы отобразить такую ​​дату
"moment().format('LLLL'); // Thursday, May 17, 2018 11:57 AM"

Это тоже работает.
Теперь для сохранения данных в моей базе данных MySQL я хочу преобразовать их в формат ГГГГ-ММ-ДД ЧЧ: мм: сс

Самое смешное, что обычно это работает хорошо, но как только у меня появляется дата текущего месяца, она больше не работает.
Вот результат моей функции:

a = Donnerstag, 4. Mai 2017 09:00
Zeit Datenbank ist adb: Invalid date
b = Donnerstag, 13. April 2017 09:00
Zeit Datenbank ist bdb: 2017-04-13 09:00:00

У меня есть два сборщика даты ( & б). Любая идея, почему преобразование мая не работает?

Редактировать:
Январь не работает
Март не работает
Может не работает
Декабрь не работает

Все остальные месяцы работают!

Код, который я использую:

var a=document.getElementById("datetimepicker_start").value;
(to read: a = Donnerstag, 7. Februar 2019 12:53)
var adb = moment(a).format("YYYY-MM-DD HH:mm:ss");
(to convert: Zeit Datenbank ist adb: 2019-02-07 12:53:00)

1

Решение

Вам нужно:

  • Укажите формат даты, которую вы читаете
  • Включите необходимую локаль

Использование момента без лишних аргументов будет анализировать даты на основе ограниченного числа форматов, но вы можете точно сказать, как анализировать данные даты, передавая дополнительный аргумент.

В вашем случае вы читаете немецкий язык, вы можете включить немецкий язык отсюда https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/locale/de.js.

например

var a = 'Donnerstag, 4. Mai 2017 09:00'
var adb = moment(a, 'LLLL').format("YYYY-MM-DD HH:mm:ss");
console.log(adb);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/locale/de.js"></script>
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]