我正在使用jQuery + dataTables + rowGrouping来呈现一个表,其中行按特定列的值进行分组。在应用rowGrouping功能之前,它看起来像这样:
Task | Status | Buttons
-------------------------------------
Test something | Stopped | Start
Eat cake | Started | Stop
Take a break | Stopped | Start
并在rowGrouping之后:
Task | Buttons
-------------------------------------
STARTED
Eat cake | Stop
-------------------------------------
STOPPED
Take a break | Start
Test something | Start
(状态列现在已隐藏,值用于创建STARTED / STOPPED分组行 - 到目前为止一直很好)。
以下是初始化dataTable的代码:
var dataTable = $("#table")
.dataTable({
'bLengthChange': false,
'bPaginate': false,
'sScrollX': "100%",
'bScrollCollapse': true,
})
.rowGrouping({
'bExpandableGrouping': true,
'sGroupingColumnSortDirection': 'asc',
'iGroupingColumnIndex': 1,
'iGroupingOrderByColumnIndex': 0
});
我现在的问题是,我想在按钮上附加一个onclick处理程序。单击“开始”按钮应将该任务的状态更改为“已启动”,任务应移至“已启动”组。
但我无法弄清楚如何做到这一点:(
我的第一个想法是再次在表对象上调用.rowGrouping(),但这是不允许的。我也尝试使用像fnUpdate()这样的API函数更新包含单击按钮的行的状态单元格,但是我失败了。
我在本页的最后一部分找到了如何将行移动到另一个组的提示:
http://code.google.com/p/jquery-datatables-row-reordering/wiki/RowGrouping
但我花了一整天努力让它发挥作用,我无法理解。
请帮助:)