В каком формате следует помещать дату и время для использования в элементе ввода HTML5 с типом DateTime?
Я пробовал:
- 1338575502
- 01/06/2012 19:31
- 01/06/2012 19:21:00
- 2012-06-01
- 2012-06-01 19:31
- 2012-06-01 19:31:00
Ни один из них не работает.
В каком формате следует помещать дату и время для использования в элементе ввода HTML5 с типом DateTime?
Я пробовал:
Ни один из них не работает.
Для <input type="datetime" value="" ...
Строка, представляющая глобальную дату и время.
Значение: действительная дата-время как определено в [RFC 3339], с этими дополнительными квалификациями:
• буквальные буквы T и Z в синтаксисе даты/времени всегда должны быть заглавными
• дата-полное производство определяется вместо четырех или больше цифр, представляющих число больше 0
<сильные > Примеры:
1990-12-31T23: 59: 60Z
1996-12-19T16: 39: 57-08: 00
http://www.w3.org/TR/html-markup/input.datetime.html#input.datetime.attrs.value
Update:
Эта функция устарела. Хотя он может работать и в некоторых браузерах, его использование не рекомендуется, поскольку оно может быть удалено в любое время. Попробуй не используйте его.
HTML был элементом управления для ввода даты и времени (час, минута, секунда и доля секунды), а также часовой пояс. Эта функция была удалена из WHATWG HTML, и нет дольше поддерживаются в браузерах.
Вместо этого браузеры реализуют (и разработчикам предлагается используйте) тип данных типа datetime-local.
Почему HTML-тип ввода типа datetime удален из браузеров, уже поддерживающих его?
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime
В этой статье отображаются допустимые допустимые типы
<time>2009-11-13</time>
<!-- without @datetime content must be a valid date, time, or precise datetime -->
<time datetime="2009-11-13">13<sup>th</sup> November</time>
<!-- when using @datetime the content can be anything relevant -->
<time datetime="20:00">starting at 8pm</time>
<!-- time example -->
<time datetime="2009-11-13T20:00+00:00">8pm on my birthday</time>
<!-- datetime with time-zone example -->
<time datetime="2009-11-13T20:00Z">8pm on my birthday</time>
<!-- datetime with time-zone "Z" -->
Этот охватывает его в поле <input>
:
<input type="date" name="d" min="2011-08-01" max="2011-08-15">
Это пример типа ввода HTML5 "дата" объединяется с атрибутами min и max показывает, как мы можем ограничить даты, которые пользователь может ввести. атрибуты min и max не зависят друг от друга и могут использоваться независимо друг от друга.
<input type="time" name="t" value="12:00">
Тип ввода HTML5 "время" позволяет пользователям выбирать соответствующее время, которое отображается в формате 24 часа. Если мы не включили значение по умолчанию "12:00", время установило бы себя на время локальной машины пользователей.
<input type="week" name="w">
Будет отображаться неделя типа HTML5. числовая версия недели, обозначенная буквой "W", вместе с соответствующий год.
<input type="month" name="m">
Тип месяца ввода типа HTML5 точно, что вы можете ожидать от этого. Он отображает месяц. Быть точный он отображает числовую версию месяца вместе с год.
<input type="datetime" name="dt">
Тип ввода HTML5 Дата и время отображает дату и время UTC. Пользователь может изменить время шаг вперед или назад с шагом в одну минуту. Если вы хотите отобразить локальную дату и время пользователя, вам нужно будет использовать следующий пример datetime-local
<input type="datetime-local" name="dtl" step="7200">
Потому что datetime выполняется через одну минуту за раз, вы можете захотеть изменить приращение по умолчанию, используя атрибут "шаг". В следующих Например, мы будем увеличивать его на два часа, установив шаг атрибута до 7200 (60 секунд X 60 минут X 2).
Для чего стоит, отбросив поддержку iOS7 для datetime
, вам нужно использовать datetime-local
, который не принимает часть часового пояса (что имеет смысл).
Не работает (iOS в любом случае):
<input type="datetime-local" value="2000-01-01T00:00:00+05:00" />
Работает:
<input type="datetime-local" value="2000-01-01T00:00:00" />
PHP для значения (безопасный для Windows):
strftime('%Y-%m-%dT%H:%M:%S', strtotime($my_datetime_input))
Это была пустая трата времени моего времени. Для вас, жаждущих бобров, для меня работал следующий формат:
<input type="datetime-local" name="to" id="to" value="2014-12-08T15:43:00">
Спецификация была немного запутанной для меня, она сказала, что использует RFC 3339, но на моем PHP-сервере, когда я использовал формат DATE_RFC3339, он не инициализировал мой вход hmtl: (PHP-константа для DATE_RFC3339 - это "Ymd\TH: i: sP" на момент написания, имеет смысл, что вы должны избавиться от информации о часовом поясе (мы используем datetime-LOCAL, ребята). Таким образом, формат, который работал у меня, был:
"Y-m-d\TH:i:s"
Я бы подумал, что более интуитивно понятно установить значение datepicker, поскольку датапикер отображает дату, но я предполагаю, что он отображается на разных браузерах.
Это работает для установки значения INPUT:
strftime('%Y-%m-%dT%H:%M:%S', time())
Это правильно отображается как HTML5-тег для тех, кто ищет это:
<input type="datetime" name="somedatafield" value="2011-12-21T11:33:23Z" />