option 要素
4.10.12 option 要素
- カテゴリー
- なし
- この要素を使うことができるコンテキスト:
select要素の子として。datalist要素の子として。optgroup要素の子として。- コンテンツ・モデル:
- テキスト
- コンテンツ属性:
- グローバル属性
disabledlabelselectedvalue- DOMインタフェース:
-
[NamedConstructor=Option(), NamedConstructor=Option(in DOMString text), NamedConstructor=Option(in DOMString text, in DOMString value), NamedConstructor=Option(in DOMString text, in DOMString value, in boolean defaultSelected), NamedConstructor=Option(in DOMString text, in DOMString value, in boolean defaultSelected, in boolean selected)] interface HTMLOptionElement : HTMLElement { attribute boolean disabled; readonly attribute HTMLFormElement form; attribute DOMString label; attribute boolean defaultSelected; attribute boolean selected; attribute DOMString value; attribute DOMString text; readonly attribute long index; };
option 要素は、select 要素の選択肢、または、datalist 要素のサジェストのリストの一部としての選択肢を表します。
select 要素の定義で説明されている特定の環境において、option 要素は、select 要素のプレースホルダー・ラベル・オプションになります。プレースホルダー・ラベル・オプションは、実際の選択肢を表すことはありませんが、select コントロールに対するラベルを表します。
disabled 属性は、論理属性です。option 要素は、disabled 属性が存在しているか、もしくは、disabled 属性が存在する optgroup 要素の子であれば、無効になります。
無効 の option 要素は、ユーザー・インタラクション・タスク・ソースでキューイングされる click イベントが、その要素で呼び出されないようにしなければいけません。
label 属性は、要素に対するラベルを提供します。option 要素のラベルは、label 属性があれば、その値となります。なければ、この要素の textContent になります。
value 属性は、要素に対する値を提供します。option 要素の値は、value 属性があれば、その値となります。なければ、この要素の textContent になります。
selected 属性は、論理属性です。これは、この要素のデフォルトの選択状態を表します。
option 要素の選択状態は、論理値で表される状態なのですが、初期値は false です。指定されなかった場合を除き、この要素が生成されるとき、その選択状態は、この要素が selected 属性を持つなら、true にセットされなければいけません。option 要素の selected 属性が追加されたら、その選択状態は true にセットされなければいけません。
Option() コンストラクターに渡す引数が 3 つ以下の場合、第三引数に true (selected 属性がセットされることを意味します)を指定したとしても、選択状態の初期値に関わらず、常に false となります。第四引数を指定すると、コンストラクターを使う際の選択状態の初期値を明示的にセットすることができます。
multiple 属性が指定されていない select 要素には、selected 属性がセットされた option 要素を子孫にひとつしか入れることができません。
option 要素の インデックス とは、同じ選択肢リストの中で、ツリー順で手前にある option 要素の数のことです。option 要素が選択肢リストにないなら、その option 要素のインデックスは 0 になります。
- option .
selected -
該当の要素が選択されていれば true を、そうでなければ、false を返します。
値をセットして、該当の要素の現在の状態を変えることができます。
- option .
index - option .
form -
該当の要素の
form要素があれば、それを返し、なければ、null を返します。 - option .
text -
textContentと同じです。ただし、スペースは折り畳まれます。 - option = new
Option( [ text [, value [, defaultSelected [, selected ] ] ] ] ) -
新しい
option要素を返します。text 引数は、該当の要素のコンテンツをセットします。
value 引数は、
value属性をセットします。defaultSelected 引数は、
selected属性をセットします。selected 引数は、該当の要素が選択されているかどうかをセットします。省略されたら、たとえ defaultSelected 引数が true だとしても、該当の要素は選択されません。
disabled と label IDL
属性は、それぞれ、同じ名前のコンテンツ属性を反映しなければいけません。defaultSelected IDL 属性は、selected コンテンツ属性を反映しなければいけません。
value IDL
属性は、取得時においては、該当の要素に value コンテンツ属性があれば、その値を返さなければいけません。なければ、該当の要素の textContent IDL 属性の値を返さなければいけません。セット時においては、該当の要素の value 属性は、新たな値にセットされなければいけません。
selected IDL 属性は、取得時においては、該当の要素の選択状態が true なら、true を返し、そうでなければ false を返さなければいけません。セット時においては、該当の要素の選択状態を新たな値にセットしなければいけません。
index IDL
属性は、該当の要素のインデックスを返さなければいけません。
text IDL
属性は、取得時においては、該当の要素の textContent IDL 属性を返さなければいけません。ただし、先頭と最後のスペース文字は削除され、2 つ以上のスペース文字は 1 つの U+0020 SPACE 文字に置き換えられます。セット時においては、該当の要素の textContent IDL 属性が新たな値にセットされたかのように作用しなければいけません。
form IDL
属性の挙動は、option 要素が select 要素の中にあるかどうかに依存します。option が親に select 要素を持つなら、または、親に colgroup 要素を持ち、その colgroup 要素が親に select 要素を持つなら、その form IDL 属性は、その select 要素の form IDL 属性と同じ値を返さなければいけません。そうでなければ、null を返さなければいけません。
HTMLOptionElement オブジェクトを生成するためのコンストラクタがいくつか提供されています(さらに、createElement() のように DOM Core で作られたメソッドもあります):Option(), Option(text), Option(text, value), Option(text, value, defaultSelected), Option(text, value, defaultSelected, selected) 。これらは、コンストラクタとして呼び出されたら、新たな HTMLOptionElement オブジェクト(新たな option 要素)を返さなければいけません。text 引数が存在したら、その新たなオブジェクトは、子として、Node をひとつだけ持たなければいけません。そのノード・タイプは TEXT_NODE (3) であり、その値はその引数の値となります。value 引数が存在したら、その新たなオブジェクトは、その値がその引数の値となる value 属性を持たなければいけません。defaultSelected 引数が存在し、それが true なら、その新しいオブジェクトは、値を持たない selected 属性を持たなければいけません。selected 引数が存在し、それが true なら、その新たなオブジェクトの選択状態は true にセットされなければいけません。そうでなければ、第四引数が存在しないか false なら、その選択状態は false にセットされなければいけません。たとえ、defaultSelected 引数が存在し、true だったとしてもです。この要素のドキュメントは、呼び出されたコンストラクタのインタフェース・オブジェクトが見つけられる Window オブジェクトのブラウジング・コンテキストのアクティブ・ドキュメントでなければいけません。
※ 原文:http://www.w3.org/TR/2011/WD-html5-20110525/the-button-element.html#the-option-element