Tipo de entrada DateTime-value format?

em que formato devo colocar a data e a hora, para utilização no elemento de entrada HTML5 com datetime Tipo?

Eu tentei.
  • 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
Nenhum deles parece funcionar.

Author: Vadim Ovchinnikov, 2012-06-01

6 answers

Para <input type="datetime" value="" ...

Um texto que representa uma data e hora globais.

Valor: uma data-hora válida tal como definido em [RFC 3339], com estas qualificações adicionais:

•as letras literais T E Z na sintaxe data/hora devem ser sempre maiúsculas

* a produção do ano completo é, em vez disso, definida como quatro ou mais algarismos representando um número superior a 0

Exemplos:

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

Actualizar:

Este recurso é obsoleto. Embora ainda possa funcionar em alguns navegadores, seu uso é desencorajado, uma vez que pode ser removido a qualquer momento. Tentar evite usá-lo.

O HTML era um controlo para introduzir uma data e tempo (hora, minuto, segundo, e fracção de em segundo lugar), bem como fuso. Este recurso foi removido do WHATWG HTML, e não é suportado por mais tempo em navegadores.

Em vez disso, os navegadores estão a implementar (e os programadores são encorajados a use)o tipo datetime-local de entrada.

Porque é que o HTML5 input type datetime é removido dos navegadores que já o suportam?

Https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime

 38
Author: Hitham S. AlQadheeb, 2017-07-22 13:42:14

Este artigo parece mostrar os tipos válidos que são aceitáveis

<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” -->

Este cobre a sua utilização no campo <input>:

<input type="date" name="d" min="2011-08-01" max="2011-08-15"> Isto exemplo do tipo de entrada HTML5" date " combinar com os atributos min e max mostra como podemos restringir as datas que um usuário pode introduzir. O os atributos min e max não dependem uns dos outros e podem ser usados independentemente.

<input type="time" name="t" value="12:00"> o tipo de entrada HTML5 "tempo" permite aos utilizadores escolha a hora correspondente que é apresentada num formato de 24 horas. Se não incluirmos o valor padrão de "12: 00" o tempo se ajustaria ao tempo da máquina local do Usuário.

<input type="week" name="w"> a semana do tipo de entrada HTML5 irá mostrar a versão numérica da semana denotada por um "W", juntamente com o ano correspondente.

<input type="month" name="m"> o tipo de entrada HTML5 mês faz exactamente o que esperas que faça. Mostra o mês. Ser precisa ele mostra o versão numérica do mês, juntamente com o ano.

<input type="datetime" name="dt"> O tipo de entrada HTML5 Datetime mostra a data e o código de hora UTC. O utilizador pode alterar o tempo avança ou recua em incrementos de um minuto. Se você quiser mostrar a data e hora locais do utilizador que terá de usar o next example datetime-local

<input type="datetime-local" name="dtl" step="7200"> Porque ... DateTime passa por um minuto de cada vez, você pode querer mudar o incremento padrão usando o atributo "step". No seguinte exemplo teremos que incrementá-lo em duas horas, definindo o passo do atributo para 7200 (60 segundos X 60 minutos X 2).

 15
Author: John Conde, 2012-06-01 17:36:53

Se vale de alguma coisa, com o iOS7 a abandonar o suporte para datetime precisas de usar datetime-localque não aceita porção de fuso-horário (o que faz sentido).

Não funciona (iOS de qualquer maneira):

 <input type="datetime-local" value="2000-01-01T00:00:00+05:00" />

Obras:

<input type="datetime-local" value="2000-01-01T00:00:00" />

PHP para o valor (windows safe):

strftime('%Y-%m-%dT%H:%M:%S', strtotime($my_datetime_input))
 14
Author: Brandon Hill, 2013-11-08 21:58:25
Isto foi uma boa perda de uma hora do meu tempo. Para vocês, castores ansiosos, o seguinte formato funcionou para mim:
<input type="datetime-local" name="to" id="to" value="2014-12-08T15:43:00">

Especificação foi um pouco confuso para mim, ele disse para usar RFC 3339, mas no meu PHP server quando eu usei o formato DATE_RFC3339 não era inicializar o meu hmtl de entrada :( PHP constante para DATE_RFC3339 é "Y-m-d\TH:eu:sP" na hora de escrever, faz sentido que você deve livrar-se das informações de fuso horário (estamos usando datetime-LOCAL, gente). Então o formato que funcionou para eu era:

"Y-m-d\TH:i:s"

Eu teria pensado que seria mais intuitivo ser capaz de definir o valor do datepicker como o datepicker mostra a data, mas eu estou supondo que a forma como ele é exibido difere entre navegadores.

 7
Author: Jacob McKay, 2014-12-08 22:00:07

Isto funciona para definir o valor da entrada:

strftime('%Y-%m-%dT%H:%M:%S', time())
 2
Author: Enigma Plus, 2016-11-16 09:47:12

Este aparece correctamente como HTML5-Tag para aqueles que procuram isto:

<input type="datetime" name="somedatafield" value="2011-12-21T11:33:23Z" />
 1
Author: Timo Braun, 2013-04-16 13:18:20