* フォーム (HTML, XHTML 1) [1] [ABBR[[[HTML]]][ハイパーテキスト・マーク付け言語]] の[DFN[[RUBYB[フォーム][form]]]]とは、 通常の[[内容]]、[[マーク]]、[DFN[[RUBY[[[制御子]]][コントロール][control]]]]と呼ぶ特殊な要素、 制御子の[RUBY[[[札]]][ラベル]]からなる文書の部分です。 [[利用者]]は普通、制御子を編集することによってフォームを[Q[埋]]めてから、 フォームを提出します。 [2] 仕様書: - [[HTML 4]] -- [CITE[Forms in HTML documents]] -- [CITE[B.6 Notes on forms]] -- [CITE[B.10 Notes on security]] [3] :フォームの[RUBY[[[再設定]]][リセット][reset]]: フォームを再設定すると、[[制御子]]の[[現在値]]は[[初期値]]に戻されます。 初期値がない時の挙動は未定義です。 [SRC[HTML 4 17.2]] :フォームの[RUBYB[[[提出]]][submit]]: フォームを提出すると、[[成功]]制御子の名前と現在値の組が[DFN[フォーム処理エージェント]]に渡されます。 [SRC[HTML 4 17.2, 17.13]] [[#comment]] ** 歴史 [4] ウェブのフォームのおおよその進化の過程: [PRE[ 簡易版フォーム 完全版フォーム 追加機能 関連規格 isindex HTML+ ↓ HTML 3 HTML 2.0 ←←←← (I-D, W3C WD) file upload (RFC 1866) ↓ (RFC 1867) ↓ ↓ ↓ keygen (NN) HTML 3.2 HTML 2.x ↓ (W3C Rec) (RFC 2070)→ HTML 4 (Web Forms 1.0) ↓ (W3C Rec) device-upload ↓ ↓ (W3C Submission) ↓ XHTML 1.0 自動補完 (WinIE 他) ime-mode (WinIE) ↓ (W3C Rec) 入力制御 (携帯電話) Basic XHTML m12n ↓ XForms 1.0 Forms Module (W3C Rec) Forms Module (W3C Rec) ↓ Web Forms 2.0 CSS3 (WHAT WD) (W3C Drafts) ]PRE] [[#comment]] ** レンダリング [5] [[WWWブラウザ]]が頁を読み込みながら徐々に[[レンダリング]]していると、 その頁に含まれるフォームも当然徐々にレンダリングされていくことになります。 しかし、 [ABBR[[[UA]]][[[利用者エージェント]]]] は、 フォーム全体をレンダリングするまで[[利用者]]がフォームを[[提出]]できないようにするべきです。 [[クライアント側スクリプト]]が使われている時にも、 フォームの絡みでうまく動作しなくなる虞があります。 [SRC[HTML 4 B.6.1]] また、タブ移動 ([CODE(HTMLa)[[[tabindex]]]]) にも注意が必要です。 [SRC[HTML 4 B.6.1]] [[#comment]] ** メモ [[#comment]] * メモ