Группировка строк Datatables - как добавить число строк в группу и развернуть/свернуть все
Я использую Datatables Collapsible/Expandable Grouping.
http://jquery-datatables-row-grouping.googlecode.com/svn/trunk/collapsibleGroups.html
Я настроил его так, чтобы все группы рухнули в исходном представлении.
Мне бы очень хотелось добавить число строк (количество строк в группе) в заголовке группы, чтобы сделать группировку строк более информативной. Это позволит пользователю получить дополнительную информацию при нажатии, чтобы развернуть группу.
Также было бы очень полезно добавить кнопки развернуть/свернуть все.
Может ли кто-нибудь помочь найти эти функции?
Я установил jsfiddle, чтобы показать, что я пытаюсь выполнить:
http://jsfiddle.net/lbriquet/4Rkb3/36/
Любая помощь будет действительно оценена!
Ответы
Ответ 1
$(document).ready(function () {
$('#example').dataTable({
"bLengthChange": false,
"bPaginate": false,
"bJQueryUI": true
}).rowGrouping({
bExpandableGrouping: true,
bExpandSingleGroup: false,
iExpandGroupOffset: -1,
asExpandedGroups: [""]
});
GridRowCount();
});
function GridRowCount() {
$('span.rowCount-grid').remove();
$('input.expandedOrCollapsedGroup').remove();
$('.dataTables_wrapper').find('[id|=group-id]').each(function () {
var rowCount = $(this).nextUntil('[id|=group-id]').length;
$(this).find('td').append($('<span />', { 'class': 'rowCount-grid' }).append($('<b />', { 'text': rowCount })));
});
$('.dataTables_wrapper').find('.dataTables_filter').append($('<input />', { 'type': 'button', 'class': 'expandedOrCollapsedGroup collapsed', 'value': 'Expanded All Group' }));
$('.expandedOrCollapsedGroup').live('click', function () {
if ($(this).hasClass('collapsed')) {
$(this).addClass('expanded').removeClass('collapsed').val('Collapse All Group').parents('.dataTables_wrapper').find('.collapsed-group').trigger('click');
}
else {
$(this).addClass('collapsed').removeClass('expanded').val('Expanded All Group').parents('.dataTables_wrapper').find('.expanded-group').trigger('click');
}
});
};
// ------------ Css -------------------------//
.rowCount-grid
{
float: right;
font-size: 15px;
color: Red;
padding-right: 250px;
}