datetime
タイプのHTML5入力要素で使用するために、どの形式で日付と時刻を入力する必要がありますか?
私が試してみました:
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
どれも機能していないようです。
<input type="datetime" value="" ...
の場合
グローバルな日付と時刻を表す文字列。
値:[RFC 3339]で定義されている有効な日時、およびこれらの追加の資格:
•日付/時刻構文のリテラル文字TおよびZは常に大文字でなければなりません
•代わりに、日付満了の生産は、0より大きい数を表す4桁以上の数字として定義されます。
例:
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
更新:
この機能は廃止されました。一部のブラウザではまだ動作する可能性がありますが、いつでも削除できるため、使用しないことをお勧めします。使用しないようにしてください。
HTMLは、日付と時刻(時、分、秒、秒の小数部)およびタイムゾーンを入力するためのコントロールでした。この機能はWHATWG HTMLから削除され、ブラウザーではサポートされなくなりました。
代わりに、ブラウザはdatetime-local入力タイプを実装しています(開発者は使用することをお勧めします)。
HTML5入力タイプ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入力タイプ「date」の例は、属性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入力タイプmonthは、期待どおりの動作をします。月を表示します。正確には、年とともに月の数値バージョンを表示します。
<input type="datetime" name="dt">
HTML5入力タイプDatetimeは、UTC日時コードを表示します。ユーザーは、時間ステップを1分単位で前後に変更できます。ユーザーのローカルの日付と時刻を表示する場合は、次の例を使用する必要がありますdatetime-local
<input type="datetime-local" name="dtl" step="7200">
datetimeは一度に1分ずつ進むため、属性「step」を使用してデフォルトの増分を変更することができます。次の例では、属性ステップを7200(60秒X 60分X 2)に設定して、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 safe):
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を使用すると言われましたが、DATE_RFC3339形式を使用したときにPHPサーバーでhmtl入力を初期化していませんでした:(DATE_RFC3339のPHPの定数は "Ymd執筆時点で\ TH:i:sP "、タイムゾーン情報(datetime-LOCALを使用しています)を削除する必要があることは理にかなっています。
"Y-m-d\TH:i:s"
日付ピッカーは日付を表示するため、日付ピッカーの値を設定できる方が直感的だと思っていましたが、その表示方法はブラウザーによって異なると推測しています。
これは、INPUTの値を設定するために機能します。
strftime('%Y-%m-%dT%H:%M:%S', time())
これは、これを探している人にはHTML5-Tagとして正しく表示されます。
<input type="datetime" name="somedatafield" value="2011-12-21T11:33:23Z" />