如何根据当前记录状态显示或隐藏当前的操作按钮

jxtslx 2017-10-12 2060

比如:未审核 就显示 编辑 删除 按钮,不是未审核状态 就不显示右边按钮

最后于 2017-10-12 被Karson编辑
最佳回复
  • Karson 2017-10-12

    @jxtslx 我们可以在JS中对operate一列修改它的formatter来实现这个功能,具体可以参考public/assets/js/backend/auth/admin.js中的代码
    如果想要实现只隐藏其中的编辑按钮,可以使用如下的代码

    {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: function (value, row, index) {
        var that = $.extend({}, this);
        if (row.id == Config.admin.id) {
            return '';
        }
        var table = $(that.table).clone(true);
        if (row.id == 5)
            $(table).data("operate-edit", null);
        that.table = table;
        return Table.api.formatter.operate.call(that, value, row, index);
    }}

    这段代码的意思是如果id=5则把编辑按钮隐藏掉,实现原理就是我们复制当前的this对象,同时克 隆一个表格,再修改表格的data-operate-edit的值为null,这样即达到隐藏的目的。效果如下。
    https://cdn.forum.fastadmin.net/uploads/201710/12/a395e14027b0971f37f6d41c7d6f630d

最新回复 (9)
  • Karson 打赏 最佳回复 2017-10-12
    感谢TA
    0 引用 2

    @jxtslx 我们可以在JS中对operate一列修改它的formatter来实现这个功能,具体可以参考public/assets/js/backend/auth/admin.js中的代码
    如果想要实现只隐藏其中的编辑按钮,可以使用如下的代码

    {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: function (value, row, index) {
        var that = $.extend({}, this);
        if (row.id == Config.admin.id) {
            return '';
        }
        var table = $(that.table).clone(true);
        if (row.id == 5)
            $(table).data("operate-edit", null);
        that.table = table;
        return Table.api.formatter.operate.call(that, value, row, index);
    }}

    这段代码的意思是如果id=5则把编辑按钮隐藏掉,实现原理就是我们复制当前的this对象,同时克 隆一个表格,再修改表格的data-operate-edit的值为null,这样即达到隐藏的目的。效果如下。
    https://cdn.forum.fastadmin.net/uploads/201710/12/a395e14027b0971f37f6d41c7d6f630d

    最后于 2017-10-12 被Karson编辑
  • 感谢TA
    0 引用 3

    @Karson Config.admin.id, admin是指的什么啊

  • Karson 打赏 2017-11-19
    感谢TA
    0 引用 4

    @LovePHP 在控制器中通过

    $this->assignconfig("admin", ['id' => $this->auth->id]);

    渲染到视图中的数据。

  • xiaotan 9月前
    感谢TA
    0 引用 5

    @Karson 那如果是自定义的按钮,要怎么操作呢?

  • zhang001 9月前
    感谢TA
    0 引用 6

    @Karson 同求,自定义按钮要怎么操作? image.png

  • liustone 8月前
    感谢TA
    0 引用 7
    zhang001 @Karson 同求,自定义按钮要怎么操作? ![image.png](//cdn.forum.fastadmin.net/uploads/201805/25/f17e2d292f8ba73a30 ...

    兄弟你们解决了这个问题吗

  • cdria 3月前
    感谢TA
    0 引用 8

    mark

  • yknt 12天前
    感谢TA
    0 引用 9

    https://forum.fastadmin.net/thread/1762 这个帖子已经有了

  • 未登录
    11
返回