【问题标题】:Select all <td> elements that "belong" to specific <th> element选择所有“属于”特定 <th> 元素的 <td> 元素
【发布时间】:2016-09-18 06:30:48
【问题描述】:

我想选择与具有data-something 属性的&lt;th&gt; 元素在同一列中的所有&lt;td&gt; 元素。

<table border="1">
    <tr>
        <th data-column="A">Column A</th>
        <th data-column="B">Column B</th>
        <th data-column="C">Column C</th>
        <th data-column="D">Column D</th>
    </tr>
    <tr>
        <td>Data A1</td>
        <td>Data B1</td>
        <td>Data C1</td>
        <td>Data D1</td>
    </tr>
    <tr>
        <td>Data A2</td>
        <td>Data B2</td>
        <td>Data C2</td>
        <td>Data D2</td>
    </tr>
    <tr>
        <td>Data A3</td>
        <td>Data B3</td>
        <td>Data C3</td>
        <td>Data D3</td>
    </tr>
    <tr>
        <td>Data A4</td>
        <td>Data B4</td>
        <td>Data C4</td>
        <td>Data D4</td>
    </tr>
    <tr>
        <td>Data A5</td>
        <td>Data B5</td>
        <td>Data C5</td>
        <td>Data D5</td>
    </tr>
</table>     

例如单击数据列A的按钮,我想选择属于A列的所有元素。

我为表格的视觉示例制作了快速表格:

Vanilla 或 jQuery(或一些轻量级库),我对这两种解决方案都持开放态度。谢谢。

【问题讨论】:

标签: javascript jquery html


【解决方案1】:
$('table tr td:nth-child('+$("table th[data-column="desired value"]").index() + 1+')')

【讨论】:

  • 是否可以只使用类似的css 选择器?
  • 对不起,我没有足够的 CSS 知识来提取列的顺序@Muflix
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 1970-01-01
  • 2022-01-03
  • 1970-01-01
  • 2012-06-07
  • 2016-12-12
  • 2016-03-19
相关资源
最近更新 更多