jquery datatables mRender извлекает параметры столбца

Я хотел бы отобразить значение ячейки, используя некоторые значения, которые я сохранил в параметрах столбца, но я не вижу очевидного способа получить доступ к текущему столбцу рендеринга.

Присоединение к исходным данным кажется избыточным и может привести к очень большому ответу json.

e.g.

$('#foo').dataTable({
    sAjaxSource : 'source.php',
    aoColumns : [
        {
            someExtraValue : 'bar'
            mRender : function(data, type, full) {
                // some how get the column's options for this cell
                return data + column.someExtraValue;
            }
        }
    ]
});

возвращаемые данные


person gawpertron    schedule 21.08.2013    source источник


Ответы (1)


Вы можете получить значение индекса для aoColumns, если используете функцию fnCreatedCell в опции настроек aoColumnDefs.

Таким образом, вы можете манипулировать созданной ячейкой после ее рендеринга.

$('#foo').dataTable({
    sAjaxSource : 'source.php',
    aoColumns : [
        {
            someExtraValue : 'bar'
        }
    ],
    aoColumnDef : [
        {
            aTargets : [0],
            nCreatedCell :  function(nTd, sData, oData, iRow, iCol) {
                var settings = $(this).fnSettings();
                var myVal    = settings.aoColumns[iCol].someExtraValue;
                $(nTd).append(myValue);
            }
        }
    ]
});
person gawpertron    schedule 22.08.2013