分享
三行代码  ›  专栏  ›  技术社区  ›  anonymus

如何根据jQuery DataTable中的条件在列数据上显示文本?

  •  0
  • anonymus  · 技术社区  · 8 月前

    列is_active有两种类型的值,值1应等于active,值2应等于Inactive。现在我想根据条件在列中显示Active或Inactive。怎么做?

    表实现

    function loadTemplates() {
            template_table = $('#template-table').DataTable({
                processing: true,
                serverSide: true,
                "ajax": {
                    "url": 'template-table',
                    "type": "POST",
                    "data": function (d) {
                        d._token = "{{ csrf_token() }}";
                    }
                },
                "aaSorting": [[0, 'desc']],
                "fnDrawCallback": function (oSettings) {
                    rowHighlight('template-table');
                    selectRowOnTableLoad(oSettings, 'id', selectedRowID);
                    dataTableRow = oSettings;
                },
                columns: [
                    {data: 'id'},
                    {data: 'title'},
                    {data: 'start_date'},
                    {data: 'end_date'},
                    {data: 'is_active'},//column need to be displayed a text
                    {data: 'template_content'},               
                    {data: 'action', orderable: false, searchable: false}
                ]
            });
        }
    
    1 回复  |  直到 8 月前
        1
  •  1
  •   Sreeraj_ms    8 月前

    使用 render :此属性将修改 从数据源读取的各种操作的数据表

     columns: [
                        {data: 'id'},
                        {data: 'title'},
                        {data: 'start_date'},
                        {data: 'end_date'},
                        {data: 'is_active',
                         render: function (data, type, row) {
                            return `<span>${row.is_active==1 ? Active : Inactive}<span>`;
                           }
                           },//column need to be displayed a text
                        {data: 'template_content'},               
                        {data: 'action', orderable: false, searchable: false}
    
    
           ]