tbody 要素

4.9.5 tbody 要素

カテゴリー
なし
この要素を使うことができるコンテキスト:
table 要素の子要素として。ただし、caption, colgroup, thead 要素の後に位置し、table 要素の子となる tr 要素がない場合に限ります。
コンテンツ・モデル:
0 個以上の tr 要素
コンテンツ属性:
グローバル属性
DOMインタフェース:
interface HTMLTableSectionElement : HTMLElement {
  readonly attribute HTMLCollection rows;
  HTMLElement insertRow(optional in long index);
  void deleteRow(in long index);
};

HTMLTableSectionElement インタフェースは、theadtfoot でも使われます。

tbody 要素は、その親要素が table 要素なら、その親の table 要素に対するデータの集まりから構成されるブロック表します。

tbody 要素は、テーブル・モデルに属します。

tbody . rows

テーブル・セクションの tr 要素の HTMLCollection を返します。

tr = tbody . insertRow( [ index ] )

tr 要素を生成し、テーブル・セクションの中で、引数に指定された位置に、それを挿入します。そして、その tr 要素を返します。

その位置は、テーブル・セクション内の行に対応します。index が -1 なら、これは引数が省略された場合のデフォルトとなりますが、テーブルセクションの最後に挿入することと同じです。

指定された位置が -1 より小さいか、もしくは、行数より大きければ、INDEX_SIZE_ERR 例外を投げます。

tbody . deleteRow(index)

テーブル・セレクションの引数に指定された位置にある tr 要素を削除します。

その位置は、テーブル・セクションの中にある行に対応します。index が -1 なら、テーブル・セクションの最後の行を削除することに相当します。

指定された位置が -1 より小さい、または、最後の行の index より大きければ、INDEX_SIZE_ERR 例外を投げます。

rows 属性は、その要素をルートとした HTMLCollection を返さなければいけません。そのフィルターは、その要素の子となる tr 要素だけに一致します。

insertRow(index) メソッドは、要素 table section で呼び出されたなら、次のとおりに動作しなければいけません:

もし index が -1 より小さい、または、rows コレクションの要素数より大きければ、このメソッドは INDEX_SIZE_ERR 例外を発出しなければいけません。

index がなく -1 に等しい、または、rows コレクションの項目数に等しいなら、このメソッドは、tr 要素を生成し、要素 table section にそれを追加し、新たに生成された tr 要素を返さなければいけません。

そうでなければ、このメソッドは、tr 要素を生成し、table section 要素の子としてそれを挿入しなければいけません。挿入場所は、rows コレクションの tr 要素のうち、指定された index に位置する tr 要素の直前です。最後に、新たに生成された tr 属性を返さなければいけません。

deleteRow(index) メソッドは、その親から、rows コレクションの要素のうち、指定された index に位置する要素を削除しなければいけません。もし index が 0 より小さい、もしくは、rows コレクションの要素数に等しいか、それより大きければ、このメソッドは INDEX_SIZE_ERR 例外を発出しなければいけません。


※ 原文:http://www.w3.org/TR/2011/WD-html5-20110525/tabular-data.html#the-tbody-element