【发布时间】:2015-08-15 11:40:36
【问题描述】:
我正在使用 jQuery DataTables 的 rowReordering 插件来让用户拖放行。以下是相关代码:
ui_actions = $('#ui_actions').DataTable({
"createdRow": function( row, data, dataIndex )
{
$(row).attr('id', 'row-' + dataIndex);
ui_actions.$('tr.selected').removeClass('selected');
$(row).addClass('selected');
},
});
ui_actions.draw();
ui_actions.rowReordering({
fnUpdateCallback: function(row){
...
}
});
如果交换了两行(让我们考虑索引为 1 和 2 的行),那么这行代码:
ui_actions.row(0).data()
将从当前索引 1 处的行数据返回,而不是 0。
这种行为是不希望的。如何确保行索引正在更新?
【问题讨论】:
-
所以您希望
ui_actions.row(0).data()返回当前的第一行,而不是重新排序之前的第一行,对吧? -
是的。我通过清除表格并读取所有行来解决这个问题。但可能有更有效的解决方案?
标签: javascript jquery html datatables row