bmw318mt Ответов: 1

Сортировка данных по столбцу флажка


У меня есть следующая таблица данных, где статус содержит флажки, которые я хочу иметь возможность сортировать по этому столбцу

$('#aMG_permissionTable')
    .dataTable({

        "bJQueryUI": true,
        "bPaginate": false,
        "sScrollY": "440",
        "bAutoWidth": true,
        "bFilter": true,
        "bInfo": true,
        "bSort": true,
        "aoColumns": [
            { "mData": "PermissionName" },
            { "mData": "PermissionWithDescription" },
            { "mData": "PermissionGroupWithDescription" },
            { "mData": "Status" }
            //{ "mData": "Status", "sSortDataType": "dom-checkbox" }
        ],
        "aoColumnDefs": [
            { "bVisible": false, "aTargets": [0] },
            // { "bSortable": false, "aTargets": [ 3] },
            { "sSortDataType": "dom-checkbox", "aTargets": [ 3 ] }
        ],
        "sPaginationType": "full_numbers",
        "aaSorting": [[ 0, "asc"]]
    });


Что я уже пробовал:

Я попробовал следующее, но ошибка пуста, при отладке она даже не входит в каждый цикл.

/* Create an array with the values of all the checkboxes in a column */
$.fn.dataTableExt.afnSortData['dom-checkbox'] = function  ( oSettings, iColumn )
{
	var aData = [];
	$( 'td:eq('+iColumn+') input', oSettings.oApi._fnGetTrNodes(oSettings) ).each( function () {
		console.log(this);
		aData.push( this.checked==true ? "1" : "0" );
	} );
	//console.log(aData);
	return aData;
};

1 Ответов

Рейтинг:
0

bmw318mt

$.fn.dataTableExt.afnSortData['dom-checkbox'] = function  ( oSettings, iColumn, iVisibleColumn ) {
	return $.map( oSettings.oApi._fnGetTrNodes(oSettings), function (tr) {
		return $(tr).find('td:eq(2) input').prop('checked') ? '1' : '0';
	});
};