Указание значения вывода типа ввода HTML5 = дата? - PullRequest
30 голосов
/ 16 августа 2010

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

Есть ли способ указать выходные данные значения, заданного датером выбора HTML? По умолчанию для оперы yyyy-mm-dd, и мне очень явно нужно dd-MMM-yyyy.

Есть ли способ контролировать этот вывод в настоящее время?

Ответы [ 3 ]

24 голосов
/ 16 августа 2010

В поле ввода даты HTML5 указано, какой формат он использует: Полная дата RFC 3339

Можно ли изменить устаревший инструмент выбора даты для использованияформат гггг-мм-дд (и обновить серверную часть, которая это читает)?

Полагаю, что нет, поэтому вы можете добавить код клея Javascript, который прослушивает событие изменения на входе HTML5 и обновляет скрытое поле значения даты, чтобы оно соответствовало формату устаревшего средства выбора даты (преобразует гггг-мм-ддд-МММ-гггг).

15 голосов
/ 13 августа 2012

В Google Chrome это недавно изменилось.Значения, отображаемые пользователю, теперь основаны на локали операционной системы.Однако показания input.value всегда возвращаются как yyyy-mm-dd независимо от формата представления.

На мой взгляд, это более полезно.

Источник:

http://updates.html5rocks.com/2012/08/Quick-FAQs-on-input-type-date-in-Google-Chrome

0 голосов
/ 30 марта 2013

Формат поля даты HTML является стандартным. Хотя изменить это невозможно, вы можете легко преобразовать объект даты в формат, который вы ищете, если у вашего пользователя включен JavaScript.

// Converts any valid Date string or Date object into the format dd-MMM-yyyy
function dateTransform(d) {
    var s = (new Date(d)).toString().split(' ');
    return [s[2],s[1],s[3]].join('-');
}

В противном случае вам нужно будет отправить в формате ISO и внедрить решение на стороне сервера. Возможно, со временем это может привести к более широкому использованию стандартного формата даты в каждой местности.

...