0

我有一个实现数据表来显示数据的 laravel 项目。我想使用一些标签来格式化表格上的某些列。

现在的问题是有第二个 switch 语句,第一个运行正常并且格式显示正常。

columns: [
        { data: 'id', name: 'id' },
        { data: 'name', name: 'name' },
        { data: 'role_id', name: 'role_id' },
        { data: 'phone', name: 'phone' },
        { data: 'email', name: 'email' },
        { data: 'status', name: 'status' },
        { data: 'created_at', name: 'created_at' },
        { data: 'action', name: 'action' }
        ],
columnDefs : [
        { targets : [5],
          render : function (data, type, row) {
            switch(data) {
               case 0 : return '<span class="label label-danger">Inactive</span>'; 
               break;
               case 1 : return '<span class="label label-primary">Active</span>'; 
               break;
               case 2 : return '<span class="label label-danger">Suspended</span>'; 
               break;

            }
        }
},

我想用标签格式化第 2 列和第 5 列,如何实现?

4

1 回答 1

0

我设法解决了。

我从控制器的初始调用之一是使用表中的默认值,然后更改数据表代码以按原样调用表名。

由此

                    return $user->role['name'];
                })

对此

                    return $user->role_id;
                })

然后我不得不像这样在索引视图上调用我的 columnDefs

            { data: 'id', name: 'id' },
            { data: 'name', name: 'name' },
            { data: 'role_id', name: 'role_id' },
            { data: 'phone', name: 'phone' },
            { data: 'email', name: 'email' },
            { data: 'status', name: 'status' },
            { data: 'created_at', name: 'created_at' },
            { data: 'action', name: 'action' }
            ],
        columnDefs : [
            { targets : [5],
                render : function (data, type, row) {
                switch(data) {
                    case 0 : return '<span class="label label-danger">Inactive</span>'; 
                break;
                    case 1 : return '<span class="label label-primary">Active</span>'; 
                break;
                    case 2 : return '<span class="label label-danger">Suspended</span>'; 
                break;
                }
            }
        },
            { targets : [2],
                render : function (data, type, row) {
                switch(data) {
                    case 1 : return '<span class="label label-danger"> SuperAdmin </span>'; 
                break;
                    case 2 : return '<span class="label label-primary">  Admin </span>'; 
                break;
                    case 3 : return '<span class="label label-success"> Support </span>'; 
                break;
                    case 4 : return '<span class="label label-info">Customer Admin </span>'; 
                break;
                    case 5 : return '<span class="label label-dark"> Customer Support </span>'; 
                break;
                    case 6 : return '<span class="label label-yellow">Customer Technician </span>'; 
                break;
                    case 7 : return '<span class="label label-purple"> App User </span>'; 
                break;
                }
            }
        }
    ],
于 2019-08-16T18:34:56.847 回答