Вот пример моей конфигурации datatables
{
"dom" : "rltip",
"processing" : true,
"serverSide" : false,
"order" : [ [ 1 , "desc" ] ],
"searching" : false,
data: [
{ "column-a" : "Sample Data A" , "column-b" : 10 , "column-c" : "Blah Blah" },
{ "column-a" : "Sample Data B" , "column-b" : 5 , "column-c" : "Blah Blah" },
{ "column-a" : "Sample Data C" , "column-b" : 38 , "column-c" : "Blah Blah" }
],
"columnDefs" : [
{
"targets" : 0,
"orderable" : false,
"data" : "column-a"
},
{
"targets" : 1,
"orderable" : false,
"data" : "column-b"
},
{
"targets" : 2,
"orderable" : true,
"className" : "title",
"data" : "column-c"
}
]
}
Я хотел отформатировать отображаемые данные, но при сортировке и других вещах, связанных с серверной частью, я хочу использовать необработанные неформатированные данные.
Важно: я должен сделать это на стороне клиента ( javascript ).
Я уже пробовал использовать обратный вызов функции render для columnDefs, но, похоже, он не работает.
"render" : function( data , type , row ) {
if ( type === "sort" )
return data;
// format data here
return data; // This is a formatted data
}
Что я имею в виду под «похоже, что это не работает», так это то, что сортировка нарушена, она будет учитывать отформатированные данные, а не только необработанные данные.
Я нашел эту старую связанную статью, но она больше не применима к более новой версии datatables.net.
Я использую версию 1.10.15