将表从上一个索引移到第一个索引

时间:2012-08-29 16:06:27

标签: jquery asp.net

我正在尝试将表格中的最后一行移动到第一行。我正在将asp:Wizard的下一个导航表行移到顶部。

这是我的代码。我究竟做错了什么?该表有8行。它现在只是一个简单的精灵巫师。

        $(document).ready(function () {
        var wizard = $("#Wizard1");

        var k = $("#Wizard1 tbody tr td:first-child");
        var m = $("#Wizard1 tbody tr td:first-child").children(":eq(8)");

        var n = m.clone();

        m.remove();
        k.before(n);

    });

我最终做了什么,我应该想到的是,我删除了行并重新添加了订单。我的语法有点偏差了吗?虽然重新检查了树。我为这种混乱道歉,但IE dev工具栏出于某种原因在检查器中放错了树。

 $(document).ready(function () {
        var k = $("#Wizard1 tr:first-child td:last-child table tr:first-child");
        var n = k.clone();

        k.remove();
        $("#Wizard1 tr:first-child td:last-child table").append(n);

    });

3 个答案:

答案 0 :(得分:0)

试试这个

$(document).ready(function () {
    var wizard = $("#Wizard1");

    var k = $("#Wizard1 tbody tr:first-child");
    var m = $("#Wizard1 tbody tr:last-child");
    var n = m.clone();

    m.remove();
    k.before(n);

});

希望这有帮助。

答案 1 :(得分:0)

我会这样做:

var wizard = document.getElementById("Wizard1");
var rows = wizard.getElementsByTagName("TR");
var firstRow = rows[0];
var lastRow = rows[rows.length - 1];
var rowParent = lastRow.parentNode; // You need the parent to manipulate the rows. Does not matter if it is tbody or the table element

rowParent.replaceChild(lastRow, firstRow);
rowParent.appendChild(firstRow);

答案 2 :(得分:0)

首先找出第一个和最后一个,然后移动它们的位置。

var firstRow = $('#Wizard1').find('tr').eq(0)
var lastRow =  $('#Wizard1').find('tr').eq($('#Wizard1').find('tr').length)

$('#Wizard1').prepend(lastRow);
$('#Wizard1').prepend(firstRow);