首页 > 其他 > 详细

fastadmin工具栏批量操作复选框所选的记录条数

时间:2021-01-22 19:29:52      阅读:86      评论:0      收藏:0      [点我收藏+]

一开始我把问题想复杂了,在require-table.js文件里修改增加js代码,然后还要在index.html页添加按钮,在fastadmin语言包里自定义按钮的内容,最后在controller里写php代码。然而看到别人写的,直接在页面获取数据就完事了,不用到处页面修改,具体如下:

参考文章:(https://blog.csdn.net/weixin_46043704/article/details/109921226?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.not_use_machine_learn_pai&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.not_use_machine_learn_pai)

需求:点击一键审批,可以批量操作复选框所选的记录条数

技术分享图片

1.首先在所在的index.html页面添加一个工具栏批量添加的按钮

   <a href="javascript:;" class="btn btn-success btn-approve btn-disabled disabled {:$auth->check(‘lgwy/attrchg/approve‘)?‘‘:‘hide‘}" title="一键审批" ><i class="fa fa-pencil"></i> 一键审批</a>

2.再在对应的js文件添加绑定按钮的事件

	 //一键审批
            $(document).on("click", ".btn-approve", function () {
                var data = table.bootstrapTable(‘getSelections‘);
                var ids = [];
                if (data.length === 0) {
                    Toastr.error("请选择操作信息");
                    return;
                }
                for (var i = 0; i < data.length; i++) {
                    ids[i] = data[i][‘id‘];//id为数据库对应的字段
                }

               // var Arr = [];
                //for (var i = 0; i < data.length; i++) {
                    //ids[i] = data[i][‘id‘];
                    //每次都要拼接新的数组
                    //var ARR = [];
                    //var id = data[i][‘id‘];
                    //var username = data[i][‘username‘][2];
                    //ARR = {id:id,username:username,flag:flag};
                    //Arr.push(ARR);

                    // console.log(data[i][‘id‘]+"----"+data[i][‘check‘][2]+"---"+year);
               // }

                Layer.confirm(
                    ‘确认选中‘+ids.length+‘条审批吗?‘,
                    {icon: 3, title: __(‘Warning‘), offset: ‘40%‘, shadeClose: true},
                    function (index) {
                        Layer.close(index);
                        Backend.api.ajax({
                            //url: "lgwy/attrchg/approve?ids=" + JSON.stringify(ids),
                            //方法一:传参方式,后台需要转换变成数组
                            /*url: "lgwy/attrchg/approve?ids=" + (ids),
                            data: {}*/
                            //方法二:传参方式,直接是数组传递给后台
                            url: "lgwy/attrchg/approve",
                            data: {ids:ids}
                        }, function(data, ret){//成功的回调
                            if (ret.code === 1) {
                                table.bootstrapTable(‘refresh‘);
                                Layer.close(index);
                            } else {
                                Layer.close(index);
                                Toastr.error(ret.msg);
                            }
                        }, function(data, ret){//失败的回调
                            console.log(ret);
                            // Toastr.error(ret.msg);
                            Layer.close(index);
                        });
                    }
                );
            });

3.最后在对应的Controller文件添加方法即可

/**
*批量审批
*/

public function approve($ids){
      //$arr = explode(‘,‘,$ids);//接受参数转变成数组
      foreach($ids as $k => $v){
            echo $k;
            echo $v;
      }
      $this->success();
}

仔细阅读,认真修改,共同进步。

fastadmin工具栏批量操作复选框所选的记录条数

原文:https://www.cnblogs.com/beliveme/p/14314871.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!