1. ホーム
  2. jquery

[解決済み] テーブルセル(td)から対応するテーブルヘッダ(th)を取得するにはどうすればよいですか?

2023-06-21 10:04:04

質問

次のような表があった場合、各td要素に対応するテーブルヘッダをどのように取得すればよいでしょうか。

<table>
    <thead> 
        <tr>
            <th id="name">Name</th>
            <th id="address">Address</th>
        </tr>
    </thead> 
    <tbody>
        <tr>
            <td>Bob</td>
            <td>1 High Street</td>
        </tr>
    </tbody>
</table>

現在、私がどれかの td 要素が既に利用可能である場合、どのようにして対応する th 要素を見つけることができますか?

var $td = IveGotThisCovered();
var $th = GetTableHeader($td);

どのように解決するのですか?

var $th = $td.closest('tbody').prev('thead').find('> tr > th:eq(' + $td.index() + ')');

あるいはもう少し簡略化して

var $th = $td.closest('table').find('th').eq($td.index());