我有一个表,表头固定,前3列固定。
http://jsfiddle.net/ncUdA/embedded/result/
我想拖放列(即A,B,C,D,E,F是应启用移位(拖放)的列。它下面的所有元素也应移至新位置。
http://jsfiddle.net/ncUdA/
我发现一个插件可以满足我的要求,但是我无法实现,因为我的代码中使用了多个表来固定标题和固定3列。
http://johnny.github.com/jquery-sortable/#table
下面的代码是有关如何执行此操作的插件代码。
我正在使用把手进行模板制作。
var oldIndex
$('.sorted_head tr').sortable({
containerSelector: 'tr',
itemSelector: 'th',
placeholder: '<th class="placeholder"/>',
vertical: false,
onDragStart: function (item, group, _super) {
oldIndex = item.index()
item.appendTo(item.parent())
_super(item)
},
onDrop: function (item, container, _super) {
var field,
newIndex = item.index()
if(newIndex != oldIndex)
item.closest('table').find('tbody tr').each(function (i, row) {
row = $(row)
field = row.children().eq(oldIndex)
if(newIndex)
field.before(row.children()[newIndex])
else
row.prepend(field)
})
_super(item)
}
})
最佳答案
谷歌搜索后,找到解决方案以通过使用拖放来重新排序表列。
我发现'akottr'写了一个很棒的jquery插件。 here
它是一个与库无关的js函数,使您能够通过使用拖放操作来对表列进行重新排序。它很容易使用。
$('#defaultTable').dragtable();
因此,我希望您可以根据需要获得重新排序表。
查看更多示例:http://akottr.github.io/dragtable/