Section 14 : フォームの基礎(6)

 フォームコントロールの紹介の最後は,複数行入力できるテキストボックスと,HTML 4.0 で新しく登場した汎用ボタンコントロールである。

複数行入力のテキストボックス

 テキストボックスは <INPUT> に対して TYPE="text" を指定することでも生成できるが,これは 1 行のみの入力である。複数行の入力を許可するようなテキストボックスは

<TEXTAREA>...</TEXTAREA>

で生成する。おもな属性は,次のとおり。

<TEXTAREA> の属性
属性 解説
NAME 文字列 コントロールに与える,フォーム中で一意を保証された名前。
ROWS 数値 テキストボックスの行数。必須。
COLS 数値 テキストボックスの桁数。必須。
onFocus スクリプト コントロールがフォーカスを得たときに実行されるスクリプト。
onBlur スクリプト コントロールがフォーカスを失ったときに実行されるスクリプト。
onSelect スクリプト コントロール中のテキストが選択されたときに実行されるスクリプト。
onChange スクリプト コントロールの内容が変わったときに実行されるスクリプト。

<TEXTAREA> の内容となるのはタグ付けされていないテキストで(文字参照は構わない),テキストボックスの初期値になる。

<P>書き込んでみてください。
<TEXTAREA NAME="sample" COLS="60" ROWS="5">
Academic HTML
</TEXTAREA>
</P>

書き込んでみてください。

汎用ボタンコントロール

 <INPUT> で TYPE 属性を submitresetbutton としてもそれぞれ役割に応じたボタンが生成されるが,これにさらに表現力と利便性を持たせたものが

<BUTTON>...</BUTTON>

である。内容としてとれるものはブロック要素,インライン要素だが,<A><FORM><FIELDSET> とフォームコントロールは含んではならない。

 <INPUT> によるボタンは,VALUE 属性にボタンに書かれる文字列を与えていたが,<BUTTON> の場合その内容がボタン表面に表示される。したがって,画像などでも構わない。

 属性を見ておこう。

<BUTTON> の属性
属性 解説
NAME 文字列 コントロールに与える,フォーム中で一意を保証された名前。
TYPE キーワード ボタンをどんな役割で動作させるかを指定する。
VALUE 文字列 ボタンが送信ボタンとして動作する場合,押されたとき渡す値。
onFocus スクリプト コントロールがフォーカスを得たときに実行されるスクリプト。
onBlur スクリプト コントロールがフォーカスを失ったときに実行されるスクリプト。

TYPE 属性のキーワードは以下のとおり。

submit
ボタンを送信ボタンとして動作させる。既定値。
reset
リセットボタンとして動作させる。
button
おもにスクリプトをトリガするボタンとして動作させる。

 このコントロールの動作は,対応する <INPUT> で生成されるボタンと同じである。

 さきほど画像も表示できると述べたが,この場合,イメージマップを用いてはならない。それが 1 つのボタンとして動作するのだから,あるいは当然である。

<P>Push this button to submit the form:<BR>
  <BUTTON NAME="submit1" TYPE="submit">
    <IMG SRC="f_btnok.gif" ALT="OK" WIDTH="85" HEIGHT="50"> Next...
  </BUTTON>
</P>

Push this button to submit the form:

 これを使うにあたって気をつけることは,HTML 3.2 では対応していないということである。

 IE3,NN4  <BUTTON> は対応していない。

フォーム内のオブジェクト

 フォーム内には,フォームコントロールとして <OBJECT> で生成されるものが使われうる。ただし,そのコントロールがどのようなふるまいをするのかというのは,オブジェクト次第である。