fastadmin动态渲染统计信息

很多时候我们需要在页面额外显示服务端传回的动态数据,此时我们只需要在index.html视图中添加:

html 复制代码
<a href="javascript:;" class="btn btn-default" style="font-size:14px;color:dodgerblue;">
    <i class="fa fa-dollar"></i>
    <span class="extend">
        金额:<span id="money">0</span>
        单价:<span id="price">0</span>
    </span>
</a>

找到对应的js文件,添加对应的事件:

javascript 复制代码
  index: function () {
            // 初始化表格参数配置
            Table.api.init({
                extend: {
                    index_url: 'kehu/index' + location.search,
                    add_url: 'kehu/add',
                    edit_url: 'kehu/edit',
                    del_url: 'kehu/del',
                    multi_url: 'kehu/multi',
                    import_url: 'kehu/import',
                    table: 'kehu',
                }
            });

            var table = $("#table");

            table.on('load-success.bs.table', function (e, data) {
                //这里可以获取从服务端获取的JSON数据
                console.log(data);
                //这里我们手动设置底部的值
                $("#money").text(data.extend.money);
                $("#price").text(data.extend.price);
            });

下面的controller部分的内容:

重写index方法

注意:默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法destroy/restore/recyclebin三个回收站方法

* 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑

* 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改

php 复制代码
   public function index()
    {
        //设置过滤方法
        $this->request->filter(['strip_tags', 'trim']);
        if (false === $this->request->isAjax()) {
            return $this->view->fetch();
        }
        //如果发送的来源是 Selectpage,则转发到 Selectpage
        if ($this->request->request('keyField')) {
            return $this->selectpage();
        }
        [$where, $sort, $order, $offset, $limit] = $this->buildparams();
        $list = $this->model
            ->where($where)
            ->order($sort, $order)
            ->paginate($limit);
        $result = ['total' => $list->total(), 'rows' => $list->items(),"extend" => ['money' => 1024, 'price' => 888]];
        return json($result);
    }

这样就能实现对应的效果:

相关推荐
runnerdancer20 分钟前
LLM是怎么处理messages数组的,提示词缓存又是什么
前端·agent
陈随易1 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人2 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
candyTong3 小时前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
IT_陈寒5 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
Jackson__6 小时前
分享一个横向滚动案例,带悬停暂停,通用性很强
前端
MariaH7 小时前
git rebase的使用
前端
_柳青杨7 小时前
深入理解 JavaScript 事件循环
前端·javascript
阡陌Jony7 小时前
关于前端性能优化的一些问题:
前端
用户600071819108 小时前
【翻译】简化 TSRX
前端