Как я могу использовать 2 функции в визуализации columnDef - PullRequest
0 голосов
/ 09 января 2020

Я использую Datatables и у меня есть таблица со столбцом даты, я пытаюсь использовать метод columnDefs: сначала изменить формат даты, а затем условно изменить цвет текста,

//date formatting - this works on its own
columnDefs: [{
targets: 6,
render: $.fn.dataTable.render.moment( 'Do MMM YYYY' )
}]
//colour changing - this also works on its own
columnDefs: [{
targets: 6,
render: function ( data, type, row ) {
   var color = '#6a7a8c';
   if (data <  todayDate) {
      color = 'red';
   } 
   if (data <=  sevenDays) {
      color = 'orange';
   }
   return '<span style="color:' + color + '">' + data + '</span>';
 }
}]

Я изо всех сил пытаюсь объединить эти 2 вместе, кажется, они не работают одновременно, работает только один из них, работает только изменение цвета, когда я пытаюсь использовать оба из них.

i пытался

// here only the colour changes, format doesnt
columnDefs: [
        {
      targets: 6,

       render: $.fn.dataTable.render.moment( 'Do MMM YYYY' )
    } ,
        ],
        columnDefs: [
        {
      targets: 6,

      render: function ( data, type, row ) {
                        console.log(data);
                      var color = '#6a7a8c';
                      if (data <  todayDate) {
                        color = 'red';
                      } 
                      if (data <=  sevenDays) {
                        color = 'orange';
                      }

                      return '<span style="color:' + color + '">' + data + '</span>';
                    }
    } ,
        ],

есть идеи, как это сделать?

1 Ответ

2 голосов
/ 15 января 2020

Пожалуйста, объедините ваши даты форматирования и изменения цвета логи c в одну функцию следующим образом:

columnDefs: [{
targets: 6,
render: function ( data, type, row ) {
   var color = '#6a7a8c';
   if (data <  todayDate) {
      color = 'red';
   } 
   if (data <=  sevenDays) {
      color = 'orange';
   }
   return '<span style="color:' + color + '">' + moment(data).format("DD-MMM-YYYY HH:mm")+ '</span>';
 }
}]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...