Jquery 更改页面加载时表格行的顺序

Jquery 更改页面加载时表格行的顺序,jquery,html-table,Jquery,Html Table,我试图弄清楚在加载页面时是否可能自动调整几个表行的顺序 我不需要任何拖放功能。它应该在页面加载时自动完成 我有一个大约10行的动态生成表,每行有自己的类: <table> <tbody> <tr class="Reference"> <th>Reference</th> <td>3302</td> </tr> <tr class="Manufa

我试图弄清楚在加载页面时是否可能自动调整几个表行的顺序

我不需要任何拖放功能。它应该在页面加载时自动完成

我有一个大约10行的动态生成表,每行有自己的类:

<table>
  <tbody>
    <tr class="Reference">
      <th>Reference</th>
      <td>3302</td>
    </tr>
    <tr class="Manufacturer">
      <th>Manufacturer</th>
      <td>Cuttler-Hammer</td>
    </tr>
    <tr class="Model">
      <th>Model</th>
      <td>V48M28E45B45 KVA</td>
    </tr>
    <tr class="Year">
      <th>Year Manufactured</th>
      <td></td>
    </tr>
    <tr class="Tonage">
      <th>Tonage</th>
      <td></td>
    </tr>
    <tr class="Shot">
      <th>Shot Size Oz</th>
      <td></td>
    </tr>
    <tr class="Size">
      <th>Shot Size Grams</th>
      <td></td>
    </tr>
    <tr class="Spacing">
      <th>Tie Bar Spacing</th>
      <td></td>
    </tr>
    <tr class="Platen">
      <th>Platen Size</th>
      <td></td>
    </tr>
  </tbody>
</table>

参考文献
3302
制造商
切割器锤
模型
V48M28E45B45千伏安
制造年份
色调
镜头大小盎司
镜头大小克
拉杆间距
模板尺寸
我需要将表格重新排序为第二行是第一行,第三行是第二行,第一行是第三行

在过去的45分钟里,我一直坐在这里试图弄清楚如何使用jQuery或Javascript来实现它,但我遇到了麻烦


可能吗?如果是这样,怎么做?

我认为可以在body onload事件上创建一个javascript函数,该函数使用jquery函数并在其他元素之前或之后移动特定元素。
这只是一个想法,不是一个具体的解决方案,但我希望能对你有所帮助。

像这样的事情怎么样

将id添加到
。否则,请使用CSS选择器(未显示)


在JQuery:中使用
:n子(n)
选择器)这将如何构造?我甚至没有意识到我可以用N个孩子和jQueryDo你只需要订购前三个还是全部?只有前三个是的,所有其他人都会留在原地。好吧,没人会帮你的!把你试过的jQuery放进去,我们可以试一试:)我试过了,但据我所知,它不起作用。检查一下JSFIDLE,你就会明白我的意思。对我来说很好。。制造商行为第一行,参考行为第二行。。如果您查看我的示例重新排序逻辑,我所做的只是交换这两行的顺序。这是小提琴-谢谢。让它工作起来。我的页面上有jQuery冲突。德普。
<table>
  <tbody id="table-body">

  </tbody>
</table>
<script language="javascript">
  $(window.document).ready(function () {
    var tableRows = Array(), 
      i = 0, 
      tempRow = undefined;

    //clone each row node to the local array
    $('#table-body').children().each(function cloneRowsToArray() {
        tableRows.push($(this).clone());
    });

    //re-order the array as necessary
    tempRow = tableRows[0];
    tableRows[0] = tableRows[1];
    tableRows[1] = tempRow;

    //re-write the newly arranged rows.
    $('#table-body').children().each(function replaceEachRowFromArray() {
        $(this).replaceWith(tableRows[i]);
        i += 1;
    });
  });
</script>