仕様
FORM要素は、
フォームに関連付けられた
要素のコレクションを介して
操作できるハイパーリンクを
表します。
その一部は、処理の為に
サーバーに送信できる
編集可能な値を
表す事ができます。
form | フォーム (interactive Form) |
---|---|
カテゴリ |
|
種類 | 通常要素 |
この要素を 使用できる 状態 | フロー |
許可されて いる内容 | フロー |
属性 | グローバル
|
text / html での タグの省略 | 省略できません。 |
許可されて いるARIA | search, none, presentation.
[既定値 : form (要素にアクセス可能な名前がある場合)] |
DOM インター フェイス | HTMLFormElement
|
レンダリング | フローコンテンツ
CSS を大雑把に読むと、 フローレイアウトに配置されたときにブロックレベルのボックスを生成します。 ボックスの下余白を1文字分空けます。 などになります。 |
参加 コンテキスト | ブロック |
確立 コンテキスト | ブロック |
form要素は、フォームに関連付けられた要素のコレクションを介して操作できるハイパーリンクを表します。その一部は、処理のためにサーバーに送信できる編集可能な値を表すことができます。
| |
使用可能な箇所
フローコンテンツを
受け入れる要素に
配置できます。
form要素は、フロー
form要素は form要素の子孫があってはならないので、form要素および form要素を祖先に持つ要素には配置できません。
<div>
<form>フォーム</form>
</div>
フロー
配置できるコンテンツ
フローコンテンツを
配置できます。
form要素は、フロー
フォーム関連要素を子孫に持つと、暗示的に form要素と関連付けられます。ただし明示的に関連付ける方法もあるので、子孫にフォーム関連要素を配置する事が必然ではありません。
子孫にフォーム関連要素もなく、フォーム関連要素との明示的な関連付けもない記述は、用途としては不適切です。
(このサイトでの例示では、送信等の安全の為に意図的に form要素とフォーム関連要素との関連付けを避けている箇所もあります。)
<form><div>フォーム</div></form>
form要素のコンテンツの一部として、フロー
属性
action属性
<form action=
"./fmreceive.htm"> <input name=
"nipInput" value= "abc"> <button name=
"nbtSender" value= "./fmform.htm">ボタン</button> <br>受信用の<br>ページへ
</form>
action属性は、URL を指定します。ブラウザーがフォーム情報をサーバーに送信する宛先です。
この値は、input要素, button要素の formaction属性によって上書きが可能です。
enctype属性
<form enctype="application/
x-www-form-urlencoded ">フォーム</form>
enctype属性は、エンコード方法を指定します。ブラウザーがフォーム情報をサーバーに送信するために使用するフォームデータのエンコード方法です。
この値は、input要素, button要素の formenctype属性によって上書きが可能です。
method属性
<form method=
"get">フォーム</form>
method属性は、HTTP メソッドを指定します。ブラウザーがフォーム情報を送信するために使用する HTTP メソッドです。既定値は "get" です。
この値は、input要素, button要素の formmethod属性によって上書きが可能です。
novalidate属性
<form novalidate>フォーム</form>
novalidate属性は、検証しないように指定する論理属性です。フォームデータ送信時に内容を検証しないようにします。
この値は、input要素, button要素の formnovalidate属性によって上書きが可能です。
target属性
<form action=
"./fmreceive.htm" target= "_blank"> <input name=
"nipInput" value= "abc"> <button name=
"nbtSender" value= "./fmform.htm">ボタン</button> <br>新しい枠で<br>受信用の<br>ページへ
</form>
target属性は、表示する場所を指定します。フォームの送信後に受信したレスポンスを表示する場所を示すユーザー定義の名前、もしくはアンダースコアから始まる標準化されたキーワードです。
既定値は、"_self" です。"_self" は、現在と同じ場所に表示します。
この値は、input要素, button要素の formtarget属性によって上書きが可能です。
accept-charset属性
<form accept-charset=
"UTF-8">フォーム</form>
accept-charset属性は、フォーム送信に使用する文字エンコーディングを指定します。
autocomplete属性
<form action=
"./fmreceive.htm" autocomplete= "on"> <input name=
"nipInput"> <button name=
"nbtSender" value= "./fmform.htm">ボタン</button> <br>受信用の<br>ページへ
</form>
autocomplete属性は、フォームのコントロールの自動入力機能のデフォルト設定を指定します。 既定値は on です。on はブラウザーはユーザーが以前入力した値を元に、値の自動補完を行うことができます。
name属性
<form name=
"nfmName">フォーム</form>
name属性は、document.forms APIで使用するフォームの名前を指定します。 name属性は、フォームコレクション内のフォームの名前を表します。値は空の文字列であってはならず、値は、それが含まれているフォームコレクション内のフォーム要素間で一意である必要があります。
rel属性
<form rel=
"next">フォーム</form>
rel属性は、フォーム要素のrel属性は、要素が作成するリンクの種類を指定します。属性の値は、スペースで区切られた一意のトークンの順不同のセットである必要があります。
id属性
<form action=
"./fmreceive.htm" id= "ifmForm"> </form>
<input form=
"ifmForm" name= "nipInput"> <button form=
"ifmForm" name= "nbtSender" value= "./fmform.htm">ボタン</button> <br>受信用の<br>ページへ
id属性は、要素の一意の識別子(ID)を指定するグローバル属性です。
HTML要素で指定する場合、id属性値は要素のツリー内のすべてのIDの中で一意である必要があり、少なくとも1つの文字が含まれている必要があります。
値には、ASCII空白を含めないでください。
IDの形式には他の制限はありません。特に、IDは数字のみで構成することも、数字で開始することも、アンダースコアで開始することも、句読点のみで構成することもできます。
要素の一意の識別子は、さまざまな目的に使用できます。特に、フラグメントを使用してドキュメントの特定の部分にリンクする方法として、スクリプトで要素をターゲットにする方法として、
およびCSSから特定の要素のスタイルを設定する方法として使用できます。
フォームではフォーム関連要素が form属性に form要素の id属性の値(form要素の一意の識別子) を指定して、フォームに関連付けします。
受信用の
ページへ
気を付ける点
フォーム関連要素を内容として含んで送信が関わります。特に action属性は、フォーム送信に使用する URL ですので注意が必要です。さらにこの値は、button要素, input要素の formaction属性によって上書きが可能です。
送信する指示をする要素は type属性が submit である button要素か、type属性が submit, image である input要素が送信ボタンとなります。type属性の既定値は button要素が submit で、input要素が text です。