Изменить Datetime-локальный выходной формат - PullRequest
0 голосов
/ 15 мая 2019

Я искал везде, но не могу найти, как это сделать.Я использую локальный тип ввода Datetime, используя:

<input type="datetime-local" />

Когда пользователь вводит значения, он отображается в этом формате на экране:

ММ / ДД / ГГГГ ЧЧ: ММAM / PM

Однако, когда форма отправлена, местное значение даты и времени появляется в следующем формате:

ГГГГ-ММ-ДД: ЧЧ: ММ

Я хочусохраните его в том же формате, в котором он был введен.Я искал, но не могу найти JavaScript, который будет захватывать значение для datetime-local и преобразовывать его в формат MM / DD / YYYY HH: MM AM / PM и устанавливать время либо AM / PM.Текущее время в военных, поэтому что-нибудь выше 12:59 вечера покажет 13:00, например.Как можно конвертировать военное время?

1 Ответ

0 голосов
/ 15 мая 2019

Вы можете использовать эту функцию

function formatDate(date) {
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12;
  minutes = minutes < 10 ? '0'+minutes : minutes;
  var year = date.getFullYear();
  var month = date.getMonth();
  month = month < 10 ? '0'+month : month;
  var date = date.getDate();
  date = date < 10 ? '0' + date : date;
  hours = hours < 10  ? '0' + hours : hours;
  minutes = minutes < 10  ? '0' + minutes : minutes;
  var strTime = month + '/' + date + '/' + year + ' ' + hours + ':' + minutes + ' ' + ampm;
  return strTime;
}

console.log(formatDate(new Date));

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

...