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

发布于 2017-10-12 06:47:37

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

查看更多

关注者
2
被浏览
4k
Karson
Karson FastAdmin创始人 2017-10-12
FastAdmin!

@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
Karson FastAdmin创始人 2017-11-19
FastAdmin!

@LovePHP 在控制器中通过

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

渲染到视图中的数据。

C̶r̶a̶y̶o̶-杭州
这家伙很懒,什么也没写!

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

xiaotan
xiaotan 2018-05-02
这家伙很懒,什么也没写!

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

zhang001
zhang001 2018-05-25
这家伙很懒,什么也没写!

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

liustone
liustone 2018-06-08
这家伙很懒,什么也没写!

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

cdria
cdria 2018-11-22
这家伙很懒,什么也没写!

mark

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览