<select>タグは、セレクトボックスを表す際に使用します。
select要素は、選択肢のリストから選択するためのコントロール(セレクトボックス)を表します。
選択肢の項目は、option要素で指定します。
選択肢の項目をグループ化するには、option要素のリストをoptgroup要素の子要素として配置します。
■属性
- autocomplete属性
- フォーム自動入力機能のヒントを指定します。
- disabled属性
- フォームコントロールが無効かどうかを指定します。
disabled属性を指定すると、コントロールは非対話型となってその値は送信されません。 - form属性
- 要素をform要素に明示的に関連付けます。
- multiple属性
- 複数の値を許可するかどうかを指定します。
- name属性
- 要素の名前を指定します。
- value属性
- 選択される値を指定します。
- required属性
- フォーム送信にコントロールが必要かどうかを指定します。
select要素にrequired属性を指定すると、ユーザーはフォームを送信する前に値を選択する必要があります。 - size属性
- コントロールのサイズを指定します。
select要素のsize属性の値には、ゼロより大きい正の整数を指定します。
この数値は、ユーザーに表示する選択肢の数を表します。
size属性を指定しない場合、
multiple属性があればユーザーに表示する選択肢の数は4となり、
multiple属性が無ければユーザーに表示する選択肢の数は1となります。
■使用例
以下のサンプルは、select要素でユーザーが選択肢を1つを選択するためのコントロールを作成しています。
option要素の1つには、selected属性を指定して初期選択されるように指定しています。
HTMLソース
<form method="post" action="step2.cgi">
<p>
<label for="course">ご希望のコース:</label>
<select id="course" name="course">
<option value="1">お試しコース</option>
<option value="2">ライトコース</option>
<option value="3" selected>ベーシックコース</option>
<option value="4">ビジネスコース</option>
<option value="5">プロフェッショナルコース</option>
</select>
</p>
<p><input type=submit value="次へ"></p>
</form>
ブラウザ上の表示
■使用例
以下のサンプルでは、select要素にrequired属性を指定して選択必須にしています。
HTMLソース
<form method="post" action="step2.cgi">
<p>
<select name="course" required>
<option value="">ご希望のコースを選択してください</option>
<option value="1">お試しコース</option>
<option value="2">ライトコース</option>
<option value="3">ベーシックコース</option>
<option value="4">ビジネスコース</option>
<option value="5">プロフェッショナルコース</option>
</select>
</p>
<p><input type=submit value="次へ"></p>
</form>
ブラウザ上の表示
select要素にmultiple属性を指定すると、選択肢のリストから複数選択が可能となります。
select要素にmultiple属性が無ければ、選択肢を1つ選択するためのコントロールとなります。
■使用例
以下のサンプルは、select要素にmultiple属性を指定して複数選択可にしています。
multiple属性を指定、かつ、size属性を指定していないので、ユーザーに表示する選択肢の数は4となります。
すべてのoption要素にselected属性をしているので、デフォルトではすべての選択肢が選択された状態になります。
HTMLソース
<p>
<label for="side">サイドメニューを選択:</label>
<select id="side" name="side" multiple>
<option value="1" selected>みそ汁</option>
<option value="5" selected>玉子</option>
<option value="2" selected>生野菜サラダ</option>
<option value="3" selected>お新香</option>
<option value="4" selected>のり</option>
</select>
</p>
ブラウザ上の表示
■使用例
以下のサンプルは、select要素にmultiple属性とrequired属性を指定して、ユーザーに最低1つ以上の項目を選択することを求めています。
multiple属性を指定、かつ、size属性を指定していないので、ユーザーに表示する選択肢の数は4となります。
HTMLソース
<form method="post" action="play.cgi">
<label>
<div>再生リストに入れる曲を選択してください:</div>
<select multiple required name="playlist">
<option value="s1">It Sucks to Be Me (Reprise)
<option value="s2">There is Life Outside Your Apartment
<option value="s3">The More You Ruv Someone
<option value="s4">Schadenfreude
<option value="s5">I Wish I Could Go Back to College
<option value="s6">The Money Song
<option value="s7">School for Monsters
<option value="s8">The Money Song (Reprise)
<option value="s9">There's a Fine, Fine Line (Reprise)
<option value="s10">What Do You Do With a B.A. in English? (Reprise)
<option value="s11">For Now
</select>
</label>
<p><input type=submit value="再生"></p>
</form>
ブラウザ上の表示
</option> の省略について
option要素の直後に別のoption要素が続く場合や、
親要素にそれ以上のコンテンツがない場合には、
option要素の終了タグ </option> は、省略可能です。
■関連項目
- <form> …… フォームを表す
- <label> …… フォーム入力欄のキャプションを表す
- <input> …… フォーム入力欄を表す
- <button> …… ボタンを表す
- <select> …… セレクトボックスを表す
- <datalist> …… 選択肢のデータリストを表す
- <optgroup> …… 選択肢グループを表す
- <option> …… 選択肢を表す
- <textarea> …… 複数行プレーンテキストの入力欄を表す
- <output> …… 実行結果の出力を表す
- <progress> …… タスクの進行状況を表す
- <meter> …… 既知の範囲内の測定値を表す
- <fieldset> …… フォームグループを表す
- <legend> …… フォームグループのキャプションを表す