Firstly, I have the following table:
The column which enclosed by red color display 2 types of account, the value 1
= Free
and value 2
= paid
(free, paid accounts).
I want before rendering the data, apply a condition to change the 1
to free
and 2
to paid
.
that’s it.
Table initialization:
var dataTableY = $('#table').DataTable({ serverSide: true, ajax: { url: 'directory/class/method' }, processing: true, scrollY: 400, paging: true, info: true, select: { style: 'os' }, pagingType: 'full_numbers', language: { url: 'DataTables/lang/english.json' } });
Advertisement
Answer
Use a column renderer :
var table = $('#example').dataTable({ //... columnDefs : [ { targets : [4], render : function (data, type, row) { return data == '1' ? 'free' : 'paid' } } ] })
The render function will return 'free'
if the column value is 1, otherwise 'paid'
. You could use a switch
if you have more values, or for example need to return a 'N/A'
too.
columnDefs : [ { targets : [4], render : function (data, type, row) { switch(data) { case '1' : return 'free'; break; case '2' : return 'paid'; break; default : return 'N/A'; } } } ]