tableObject.tBodiesコレクション

tableObject.tBodiesは、表(table要素)内のデータ行ブロック(tbody要素)のコレクション。

データ行ブロック(tbody要素)は、1行でブロック化することも、複数行でブロック化することもできる。表に複数のデータ行ブロック(tbody要素)を指定することもできる。

構文

$tableElementReference.tBodies;

$tableElementReference.tBodies[0]; // 表の1つ目のデータ行ブロックへの参照
$tableElementReference.tBodies[1]; // 表の2つ目のデータ行ブロックへの参照

$tableElementReference.tBodies.length; // 表のデータ行ブロックの数

$tableElementReference.tBodies[0].innerHTML; // 表の1つ目のデータ行ブロックへの参照内容

$tableElementReference.tBodies[0].cells[0]; // 表の1行目の1列目のセルへの参照

サンプル

1行目1列目 1行目2列目 1行目3列目
2行目1列目 2行目2列目 2行目3列目
3行目1列目 3行目2列目 3行目3列目

サンプルの動作について

  • 背景色が薄い青色のセルにマウスのポインタ(カーソル)を合わせると、背景色が薄い青色の全てのセルの背景色を黄色にする。マウスのポインタ(カーソル)を外すと、元の薄い青色の背景色に戻る。
  • 背景色が薄い緑色のセルにマウスのポインタ(カーソル)を合わせると、背景色が薄い緑色の全てのセルの背景色を黄色にする。マウスのポインタ(カーソル)を外すと、元の薄い緑色の背景色に戻る。

サンプルのソースコード

JavaScript

<script type="text/javascript">
window.onload = function(){
    var $sampleTBodies = document.getElementById( "sample" ).tBodies;
    for ( var $tbodyIndex = 0; $tbodyIndex < $sampleTBodies.length; $tbodyIndex++ ) {
        $sampleTBodies[$tbodyIndex].onmouseover = function(){
            this.style.backgroundColor = "yellow";
        };
        $sampleTBodies[$tbodyIndex].onmouseout = function(){
            this.style.backgroundColor = "";
        };
    }
}
</script>

HTML

<table id="sample">
    <tbody id="sampleTbodyA">
        <tr>
            <td>1行目1列目</td>
            <td>1行目2列目</td>
            <td>1行目3列目</td>
        </tr>
    </tbody>
    <tbody id="sampleTbodyB">
        <tr>
            <td>2行目1列目</td>
            <td>2行目2列目</td>
            <td>2行目3列目</td>
        </tr>
        <tr>
            <td>3行目1列目</td>
            <td>3行目2列目</td>
            <td>3行目3列目</td>
        </tr>
    </tbody>
</table>

CSS

<style>
#sample {
    cursor: pointer;
}
#sampleTbodyA {
    background-color: lightblue;
}
#sampleTbodyB {
    background-color: lightgreen;
}
#sample tr,
#sample td {
    background-color: inherit;
}
</style>

スポンサード リンク

カテゴリー: DOM, JavaScript, Tableオブジェクト, リファレンス パーマリンク