1 |
wakaba |
1.2 |
|
2 |
|
|
|
3 |
|
|
* [CODE(HTMLe)@en[input]] [CODE(HTMLa)@en[type]] [CODE(HTML)@en[time]] (HTML)
|
4 |
|
|
|
5 |
|
|
[4]
|
6 |
|
|
[[HTML]] の [CODE(HTMLe)@en[[[input]]]]
|
7 |
|
|
[[要素]]の [CODE(HTMLa)@en[[[type]]]] [[属性]]を
|
8 |
|
|
[DFN@en[[CODE(HTML)[[[time]]]]]] とすると、
|
9 |
|
|
[[時刻]]を指定する[[フォーム制御子]]となります。
|
10 |
|
|
|
11 |
|
|
;; ここで指定できる[[時刻]]には、
|
12 |
|
|
[[日付]]や[[時間帯]]の情報は含まれません。
|
13 |
|
|
|
14 |
|
|
;; ここで指定できるのは1[[日]]の中の[[時刻]]であり、
|
15 |
|
|
[[時間]]の長さではありません。
|
16 |
|
|
|
17 |
|
|
[5] 仕様書:
|
18 |
|
|
- [[Web Forms 2.0]]
|
19 |
|
|
-- [CSECTION@en[2.4. Extensions to the [CODE(HTMLe)@en[[[input]]]] element]]
|
20 |
|
|
<IW:WF2:"#extensions">
|
21 |
|
|
|
22 |
|
|
[[#comment]]
|
23 |
|
|
|
24 |
|
|
|
25 |
|
|
** 値
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
*** 構文
|
29 |
|
|
|
30 |
|
|
[6]
|
31 |
|
|
[[DOM]] 内や[[フォーム提出]]時に用いられる値は、
|
32 |
|
|
[[ISO 8601]] の[[プロファイル]]であり、
|
33 |
|
|
次のような構文を有します。
|
34 |
|
|
- [[時]]: 2桁の[[数字]] ([CODE(HTML)[[[0]]]]〜[CODE(HTML)[[[9]]]])
|
35 |
|
|
- [CODE(HTML)[[[:]]]]
|
36 |
|
|
- [[分]]: 2桁の[[数字]]
|
37 |
|
|
- 省略可能:
|
38 |
|
|
-- [CODE(HTML)[[[:]]]]
|
39 |
|
|
-- [[秒]]: 2桁の[[数字]] ([[既定値]]は [CODE(HTML)[[[0]]]])
|
40 |
|
|
-- 省略可能:
|
41 |
|
|
--- [CODE(HTML)[[[.]]]]
|
42 |
|
|
--- [[秒]]以下: 1桁[[以上]]の[[数字]]
|
43 |
|
|
([[既定値]]は[[零]])
|
44 |
|
|
|
45 |
|
|
[[数]]は[[十進数]]と[['''しなければなりません''']]。
|
46 |
|
|
必要なら[[零埋め]][['''しなければなりません''']]。
|
47 |
|
|
|
48 |
|
|
[SRC@en[WF2 2.4]]
|
49 |
|
|
|
50 |
|
|
[[#comment]]
|
51 |
|
|
|
52 |
|
|
|
53 |
|
|
*** 暦
|
54 |
|
|
|
55 |
|
|
[14]
|
56 |
|
|
[[時刻]]は0[[以上]]24[[時間]][[以下]]と[['''しなければなりません''']]。
|
57 |
|
|
[SRC@en[WF2 2.4]]
|
58 |
|
|
|
59 |
|
|
[3] [[閏秒]]に関しては、 [CODE(HTML)@en[[[datetime]>>14]]]
|
60 |
|
|
の項を参照してください。
|
61 |
|
|
|
62 |
|
|
[[#comment]]
|
63 |
|
|
|
64 |
|
|
|
65 |
|
|
*** 例
|
66 |
|
|
|
67 |
|
|
[7] [CODE(HTML example)[23:59:00.00000]]
|
68 |
|
|
[SRC@en[WF2 2.4]]
|
69 |
|
|
|
70 |
|
|
[3] [CODE(HTML example)[00:00:05]]
|
71 |
|
|
[SRC@en[WF2 2.4]]
|
72 |
|
|
|
73 |
|
|
[[#comment]]
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
*** メモ
|
77 |
|
|
|
78 |
|
|
[16] [[零点]]は、 [CODE(HTML)@en[[[00:00]]]]
|
79 |
|
|
です。
|
80 |
|
|
[SRC@en[WF2 2.4.2]]
|
81 |
|
|
|
82 |
|
|
[[#comment]]
|
83 |
|
|
|
84 |
|
|
|
85 |
|
|
** 属性との関係
|
86 |
|
|
|
87 |
|
|
[8]
|
88 |
|
|
[CODE(HTMLa)@en[[[step]]]] [[属性]]は[[秒]]単位の精度を表します。
|
89 |
|
|
[[既定値]]は [CODE(HTML)[[[60]]]] (1[[分]]) です。
|
90 |
|
|
[SRC@en[WF2 2.4]]
|
91 |
|
|
|
92 |
|
|
[[#comment]]
|
93 |
|
|
|
94 |
|
|
|
95 |
|
|
** レンダリング
|
96 |
|
|
|
97 |
|
|
[9]
|
98 |
|
|
[[利用者エージェント]]は適切な [[widget]]、
|
99 |
|
|
例えば[[時計]]を使うことが期待されます。
|
100 |
|
|
[SRC@en[WF2 2.4]]
|
101 |
|
|
|
102 |
|
|
[15]
|
103 |
|
|
[[利用者エージェント]]は、[[利用者]]に対し、
|
104 |
|
|
[[時間帯]]の情報が含まれないことを明らかにするべきです。
|
105 |
|
|
[SRC@en[WF2 2.4]]
|
106 |
|
|
|
107 |
|
|
[[#comment]]
|
108 |
|
|
|
109 |
|
|
|
110 |
|
|
** 互換性
|
111 |
|
|
|
112 |
|
|
[13] '''未対応利用者エージェントとの互換性'''
|
113 |
|
|
|
114 |
|
|
[CODE(HTML)@en[[[month]]]] に対応していない[[利用者エージェント]]は、
|
115 |
|
|
[CODE(HTML)@en[[[text]]]] (単一行[[文章入力制御子]])
|
116 |
|
|
として扱います。従って、[[利用者]]は任意の文字列を入力することができます。
|
117 |
|
|
|
118 |
|
|
ですから、[[著者]]は、対応している[[利用者エージェント]]が一般的になるまでの間、
|
119 |
|
|
[[フォーム制御子]]の近くで記入方法を説明しておくのがよいでしょう。
|
120 |
|
|
[[フォーム処理エージェント]]は記入された値が適当か検査するべきです
|
121 |
|
|
(これは[[安全性]]の観点からも重要です)。
|
122 |
|
|
|
123 |
|
|
[[#comment]]
|
124 |
|
|
|
125 |
|
|
|
126 |
|
|
** 歴史
|
127 |
|
|
|
128 |
|
|
[10]
|
129 |
|
|
この [CODE(HTMLe)@en[[[input]]]] [CODE(HTMLa)@en[[[type]]]]
|
130 |
|
|
は [[Web Forms 2.0]] で導入されました。
|
131 |
|
|
|
132 |
|
|
[[#comment]]
|
133 |
|
|
|
134 |
|
|
|
135 |
|
|
** 実装
|
136 |
|
|
|
137 |
|
|
[11]
|
138 |
|
|
[[Opera 9]] が実装しています。
|
139 |
|
|
|
140 |
|
|
[[#comment]]
|
141 |
|
|
|
142 |
|
|
|
143 |
|
|
** 関連
|
144 |
|
|
|
145 |
|
|
[12]
|
146 |
|
|
[CODE(HTMLe)@en[[[input]]]] [CODE(HTMLa)@en[[[type]]]]
|
147 |
|
|
として、[[日付]]のための [CODE(HTML)@en[[[date]]]]、
|
148 |
|
|
[[日付]]と[[時刻]]のための [CODE(HTML)@en[[[datetime]]]]
|
149 |
|
|
や [CODE(HTML)@en[[[datetime-local]]]] などがあります。
|
150 |
|
|
|
151 |
|
|
[[#comment]]
|
152 |
|
|
|
153 |
|
|
|
154 |
|
|
** メモ
|
155 |
|
|
|
156 |
|
|
[[#comment]]
|
157 |
|
|
|
158 |
|
|
|
159 |
|
|
* [CODE(perl)@en[time]] 関数 (Perl)
|
160 |
|
|
|
161 |
|
|
- [1] [[Perl]] の [CODE(perl)[time]] 関数が返す値 (に限らず、 Perl で時刻を表す整数値) は実は環境依存なんですね。[[駱駝本]]読んで知りました。 [[Un*x]] や [[ActivePerl]] では [[Un*x時間]] ([[Epoch]] = 1970年1月1日0時0分0秒 [[GMT]]) ですけど、 [[OSX]] 以前の [[MacOS]] とか [[VMS]] とかは [[epoch]] が違うようで。
|
162 |
|
|
- [2] ってことで、可搬なスクリプトを書くつもりがあるならそれなりの対処が必要な場面もあるかもしれません。[WEAK[ないかもしれません。秒数を保存データに使ったりしない限り。]]
|