首页 > 解决方案 > 将样式单元格从数据库添加到 DataTable

问题描述

我正在尝试根据通话状态为我的单元格添加样式。

一个呼叫可以具有以下状态之一:

这种风格在 DB 的表格中的列中:

span_classclass带有以下内容:

span_class:徽章bg-primary text-white
类:badge bg-primary text-white

例如。

我想将此样式添加到我的数据表中的列状态中。

我认为我可以columns用渲染来做到这一点,但我不知道我该怎么做。

我的专栏是:

columns: [
  { data: '', name: '' },
  { data: 'identi', name: 'identi' },
  { data: 'nombre', name: 'nombre' },
  { data: 'direccion', name: 'direccion' },
  { data: 'provincia', name: 'provincia' },
  { data: 'ciudad', name: 'ciudad' },
  { data: 'teleoperadora', name: 'teleoperadora' },
  { data: 'reasignar', name:'reasignar', 'render': function ( data, type, row ) {
      return "<select class='select_operator'><option>-- Seleccione --</option></select>";
  },       
  },
  { data: 'estado', name: 'estado' },
  { data: 'estadoCita', name: 'estadoCita' },
  { data: 'fechaAsignacion', render: function (data, type, row) {
      return moment(new Date(data).toString()).format('DD-MM-YYYY HH:mm:ss');
  } 
  },
  { data: 'action', name: 'action', orderable: false, searchable: false },
],

在“estado”(状态)中我需要添加类

更新

我正在尝试这个:

{
  data: 'estado',
  render: function(data, type, row) {
    return '<span class="' + data.clase + '">' + data.estado + '</span>';
  }
},

更新

{
  data: 'estado',
  render: function(data, type, row) {
    return '<span class="' + row.class_span + " " + row.clase + '">' + row.estado + '</span>';
  }
},

标签: jquerycssdatatables

解决方案


这解决了我的问题。我在控制器中的查询中有一个JSON,并返回我需要的值 css。在我将课程放入我的 td 之后:

{ data: 'estado', render: function (data, type, row) {
                return '<span class="'+row.class_span+" "+row.clase +'">' + row.estado + '</span>';
                } 
            },

推荐阅读