代码之家  ›  专栏  ›  技术社区  ›  Aaron

使用jquery在特定模式中移动表行

  •  1
  • Aaron  · 技术社区  · 15 年前

    我有一张表,上面的行基本上是这样的。

    • 正常行
    • 正常行
    • 正常行
    • 汇总行
    • 正常行
    • 汇总行
    • 正常行
    • 正常行
    • 汇总行

    所以基本上x是“正常行”,后面总是跟一个“摘要行”。摘要行显示普通行中数据的聚合。我在运行时计算聚合,因此“摘要行”自然放在它们聚合的正常行之后。

    我所要做的就是在运行时将每一个“摘要行”移动到它前面的“普通行”的丛上方。所以我最终得到了:

    • 汇总行
    • 正常行
    • 正常行
    • 正常行
    • 汇总行
    • 正常行
    • 汇总行
    • 正常行
    • 正常行

    …等。

    因此,通过为它们提供适当的CSS类,比如说class=“summary”和class=“normal”,我希望编写一个与每个“summary row”匹配的选择器查询,并将其有效地移动到它前面的第一个“normal row”之上。

    最优雅的jquery方式是什么?

    2 回复  |  直到 8 年前
        1
  •  1
  •   redsquare    15 年前

    请参阅以下粗略演示 here . 我采用这种方法从最后一个摘要行开始,并将其移到前一个摘要行之后。当然,第一个摘要没有前一行,因此您需要检查它并将其移动到tbody中的第一行。

        2
  •  0
  •   Ms2ger    15 年前

    我怀疑如果你把你的标记改成

    <table>
      <tbody>
        <tr>Normal Row
        <tr>Normal Row
        <tr>Normal Row
        <tr>Summary Row
      <tbody>
        <tr>Normal Row
        <tr>Summary Row
      <tbody>
        <tr>Normal Row
        <tr>Normal Row
        <tr>Summary Row
    </table>
    

    Hth.