编程语言
首页 > 编程语言> > python测试开发django-185.bootstrap-table 后端搜索功能实现(queryParams)

python测试开发django-185.bootstrap-table 后端搜索功能实现(queryParams)

作者:互联网

前言

bootstrap-table 分页方式可以选 server 和client 两种分页方式。

前面一篇已经写过前端分页,在前端页面搜索,只需开启search 搜索输入框即可实现https://www.cnblogs.com/yoyoketang/p/15752639.html
把搜索参数传到后端搜索,是通过 queryParams 属性实现的。

toolbar 添加搜索框

在 toolbar 添加搜索框和搜索按钮

           <form id="toolbar" class="form-inline" role="form">
                    <button id="btn_add" type="button" class="btn btn-success">
                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>新增项目
                    </button>
                    <div class="form-group">
                        <input type="text" id="project_name" name="project_name" class="form-control"  placeholder="项目名称">
                    </div>
                    <div class="form-group">
                        <input type="text" id="publish_app" name="publish_app" class="form-control"  placeholder="应用名称">
                    </div>
                    <button type="button" id="search" class="btn btn-default btn-info">搜索</button>
            </form>
            <table id="table" data-toolbar="#toolbar"></table>

页面效果

queryParams 设置

设置 queryParams 属性,params对象包含:limit, offset, search, sort, order, 可以自己添加搜索参数

        //得到查询的参数,会在url后面拼接,如:?rows=5&page=2&sortOrder=asc&search_kw=&_=1564105760651
        queryParams: function (params) {
            // params对象包含:limit, offset, search, sort, order
            //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
            var temp;
            temp = {
                page: (params.offset / params.limit) + 1,   //页码
                size: params.limit,   //页面大小
                project_name: $('#toolbar #project_name').val(),
                publish_app: $('#toolbar #publish_app').val()
                //查询框中的参数传递给后台
                //search_kw: $('#search-keyword').val(), // 请求时向服务端传递的参数
            };
            return temp;
        }

定义点击 search 按钮时刷新表格(点右侧的刷新按钮实现效果也是一样)

// 搜索功能
$("#search").click(function(){
    // 刷新表格
    $('#table').bootstrapTable('refresh');
})

点击搜索提交后,会看到请求参数已经带过去

后端根据传过去的参数,查询到结果返回就可以实现搜索功能了

标签:search,python,bootstrap,limit,django,搜索,params,queryParams,toolbar
来源: https://www.cnblogs.com/yoyoketang/p/15754571.html