<!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>