table的tr行移

圖片描述

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>table的tr行移</title>
    <style>
        .my_tab{
            text-align: center;
        }
    </style>
</head>

<body>
    <table class="my_tab" style="width: 500px;margin:20px auto;margin-bottom:0;">
        <tr class="move">
            <th style="width: 10%">
                序 號
            </th>
            <th style="width: 15%">
                職位
            </th>
            <th style="width: 15%">
                姓名
            </th>
            <th style="width: 30%">
                順序
            </th>
        </tr>
    </table>
    <table class="my_tab" style="margin:0 auto;width: 500px;">
        <tr class="move">
            <td class="tab_num" style="width: 10%">
                1
            </td>
            <td style="width: 15%">
                個人安保人員
            </td>
            <td style="width: 15%">
                王大錘1
            </td>
            <td style="width: 30%">
                <a class="downarrow" href="#" title="向下移">向下移</a>
                <a class="uparrow" href="#" title="向上移">向上移
                </a>
            </td>
        </tr>
        <tr class="move">
            <td class="tab_num">
                2
            </td>
            <td>
                個人祕書
            </td>
            <td>
                王小祕2
            </td>
            <td>
                <a class="downarrow" href="#" title="向下移">向下移</a>
                <a class="uparrow" href="#" title="向上移">向上移
                </a>
            </td>
        </tr>
        <tr class="move">
            <td class="tab_num">
                3
            </td>
            <td>
                個人安保人員
            </td>
            <td>
                王大錘3
            </td>
            <td>
                <a class="downarrow" href="#" title="向下移">向下移</a>
                <a class="uparrow" href="#" title="向上移">向上移
                </a>
            </td>
        </tr>
        <tr class="move">
            <td class="tab_num">
                4
            </td>
            <td>
                個人祕書
            </td>
            <td>
                王小祕4
            </td>
            <td>
                <a class="downarrow" href="#" title="向下移">向下移</a>
                <a class="uparrow" href="#" title="向上移">向上移
                </a>
            </td>
        </tr>
        <tr class="move">
            <td class="tab_num">
                5
            </td>
            <td>
                個人安保人員
            </td>
            <td>
                王大錘5
            </td>
            <td>
                <a class="downarrow" href="#" title="向下移">向下移</a>
                <a class="uparrow" href="#" title="向上移">向上移
                </a>
            </td>
        </tr>
    </table>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    /*
              params
              t:觸發事件的元素
              oper:操做方式
        */
    $(function() {
        function check(t, oper) {
            var data_tr = $(t).parent("td").parent("tr"); //獲取到觸發的tr
            if (oper == "MoveUp") { //向上移動
                if ($(data_tr).prev().html() == null) { //獲取tr的前一個相同等級的元素是否爲空
                    alert("已是最頂部了!");
                    return;
                } {
                    $(data_tr).insertBefore($(data_tr).prev()); //將自己插入到目標tr的前面 
                    var cur_num = $(data_tr)[0].rowIndex + 2; //獲取當前行行號
                    $(data_tr).find(".tab_num").text(cur_num - 1); //當前行上移後序號變爲cur_num-1
                    $(data_tr).next("tr").find(".tab_num").text(cur_num); //當前行移動前的前一行下移後序號變爲cur_num
                }
            } else {
                if ($(data_tr).next().html() == null) {
                    alert("已是最低部了!");
                    return;
                } {
                    $(data_tr).insertAfter($(data_tr).next()); //將自己插入到目標tr的後面 
                    var cur_num = $(data_tr)[0].rowIndex; //獲取當前行行號
                    $(data_tr).find(".tab_num").text(cur_num + 1); //當前行下移後序號變爲cur_num
                    $(data_tr).prev("tr").find(".tab_num").text(cur_num); //當前行移動前的下一行上移後序號變爲cur_num
                }
            }
        }
        $(".downarrow").on("click", function() {
            check(this, "MoveDown");

        })
        $(".uparrow").on("click", function() {
            check(this, "MoveUp");
        })
    })
    </script>
</body>

</html>
相關文章
相關標籤/搜索