Jquery上下移动行

我使用这里给出的代码使用jquery在gridview中上下移动行,这非常有效,但是如何实现将行移动到表中的第一个位置或最后一个位置?

添加顶部和底部链接,并在第一行/最后一行之后/之前插入:

DEMO

JS:

$(document).ready(function(){ $(".up,.down,.top,.bottom").click(function(){ var row = $(this).parents("tr:first"); if ($(this).is(".up")) { row.insertBefore(row.prev()); } else if ($(this).is(".down")) { row.insertAfter(row.next()); } else if ($(this).is(".top")) { row.insertBefore($("table tr:first")); }else { row.insertAfter($("table tr:last")); } }); }); 

HTML:

 
One Up Down Top Bottom
Two Up Down Top Bottom
Three Up Down Top Bottom
Four Up Down Top Bottom
Five Up Down Top Bottom

你可以做

 $(document).ready(function(){ $(".first,.last").click(function(){ var row = $(this).parents("tr:first"); var rows= row.parents().find("tr"); if ($(this).is(".first")) { row.insertBefore(rows[0]); } else { row.insertAfter(rows[rows.length]); } }); }); 

的jsfiddle

 $(document).ready(function(){ $(".first,.last").click(function(){ var row = $(this).parents("tr:first"); var rows= row.parents().find("tr"); if ($(this).is(".first")) { row.insertBefore(rows[0]); } else { row.insertAfter(rows[rows.length]); } }); });