admin 发表于 2022-6-4 19:45:19

THINKPHP整合layui 实现单搜索功能(分页功能实现)

1、layui数据表格添加搜索框

<div class="layui-card-body">
                <div class="test-table-reload-btn" style="margin-bottom: 10px;">
                      搜索账号:
                  <div class="layui-inline">
                        <input class="layui-input" name="username" id="test-table-demoReload" autocomplete="off">
                  </div>
                  <button class="layui-btn" data-type="reload">搜索</button>
                </div>
                </div>2、在方法渲染中添加id用于查询时数据重载
id:'idTest'//数据重载表示
table.render({
            elem: '#test-table-cellEdit'
            ,id:'idTest'//数据重载表示
            ,url: '{:url("/admin/index")}'
            ,toolbar: true
            ,page: true //开启分页
            ,cellMinWidth: 60 //全局定义常规单元格的最小宽度,
            ,cols: [[
                {type:'checkbox'}
                ,{field:'id', title:'ID', sort: true,width:60,}
                ,{field:'username', title:'用户名',sort: true}
                ,{field:'mobile', title:'电话',}
                ,{field:'email', title:'邮箱', }
                ,{field:'sex', title:'性别', width:60,templet:function (d){
                  if (d.sex == 1)return'男';
                  else if (d.sex == 2)return '女';
                  else return "";
                  } }
                ,{field:'group_id', title:'权限',width:80, }
                ,{field:'update_time', title:'登陆时间', sort: true}
                ,{field: 'right', title: '操作', toolbar:'#test-table-operate-barDemo'}
            ]]
            ,first:false//不显示首页
            ,last:false//不显示尾页
      })


3、给上面 搜索框 中添加事件(紧接在第二步的下面即可)


//搜索监听
      $('.test-table-reload-btn .layui-btn').on('click', function(){
            table.reload('idTest', {
                where: { //设定异步数据接口的额外参数,任意设
                  value:$("#test-table-demoReload").val()
                },
                page:{
                  curr:1
                }
            });
      });



4、thinkphp 后台控制器处理:

public function index()
    {

      if ($this->request->isAjax()) {


            $page = request()->param('page');// 获取分页数
            $val = request()->param('value');// 获取品牌搜索关键字
            $limit = request()->param('limit');// 获取每页条数
            $start=$limit*($page-1);// 计算分页数据


            if($val == ''){
                $lists = Db::table('yh_admin')->select();
                $count = AdminUserModel::count();//查询多少条信息

            }else{
                $lists = AdminUserModel::where('username',$val)->limit($start,$limit)->select();
                $count =count(AdminUserModel::where('username',$val)->select());
            }
            $arr = array(
                'code'=>0,
                'msg'=>'查询成功',
                'count'=>$count,
                'data'=>$lists,$tmp_group
            );
            return json($arr);
      }
      return View::fetch('admin_index');
    }






页: [1]
查看完整版本: THINKPHP整合layui 实现单搜索功能(分页功能实现)