bootstrap-table模板(template)-返回表格-分页模板-分页插件

css和js的引入

bootstrap中文网的链接: link https://www.bootcss.com/
bootstrap-table中文网的链接: link https://www.bootstrap-table.com.cn/index.html
css引入

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin="anonymous">
<link rel="stylesheet" href="https://unpkg.com/bootstrap-table@1.21.1/dist/bootstrap-table.min.css">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap-theme.min.css" integrity="sha384-6pzBo3FDv/PJ8r2KRkGHifhEocL+1X2rVCTTkUfGk7/0pbek5mMa1upzvWbrUbOZ" crossorigin="anonymous">
//这是网页模板的引入 先引入bootstrap_css在引入bootstrap-table_css

css一般在< head>< /head>和< body></ body>之间引入

js引入

<script type="text/javascript" src="../../font/js/jquery-3.6.0.js" ></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin="anonymous"></script>
<script src="https://unpkg.com/bootstrap-table@1.21.1/dist/bootstrap-table.min.js"></script>
<script src="https://unpkg.com/bootstrap-table@1.21.1/dist/locale/bootstrap-table-zh-CN.min.js"></script>
//jquery一定要在bootstrap和bootstrap-table之前引入,因为他俩基于jquery
//bootstrap-table-zh-CN 中文解析
//这里只有jquery的引入不是网页版

js一般在< body></ body>之后引入,一般放在页面最后

bootstrap-table模板(template)-返回表格

 $(function(){
        $('#table1').bootstrapTable({
            url: '/Master/getCheck', //后台接口
            method: 'post',
            contentType:"application/x-www-form-urlencoded",//method为post时必须加上这个,否则接收不到参数 后台返回Map格式或者json格式都可以用application/x-www-form-urlencoded 
            dataType: 'json',
            //queryParams这个方法可以和后台交互
            queryParams:function queryParams(params) {   //设置查询参数
                var param = {
                    pageSize: params.limit,   //每页多少条数据
                    pageNumber: params.offset, //从第几条数据开始
                    phone : $.trim($("#phone").val()),//可以返回后台
                    name : $.trim($("#name").val()),
                };
                //console.log("pageSize="+params.limit+"pageNumber="+params.offset);
                return param;
            },
           /* onSearch:function (text){
                alert(text);
            },*/
          /*  customSearch:function(){
                alert("customSearch");
            },*/
            height: 560,
            toolbar: '#toolbar',                //工具按钮用哪个容器
            striped: true,                      //是否显示行间隔色
            pagination: true,                   //是否显示分页(*)
            maintainSelected: true,             //设置为 true 在点击分页按钮或搜索按钮时,将记住checkbox的选择项
            sidePagination: "server",          //分页方式:client客户端分页,server服务端分页(*)
            pageNumber:1,                       //初始化加载第一页,默认第一页
            pageSize: 5,                       //每页的记录行数(*)
            pageList: [2,5, 10, 25, 50, 100],        //可供选择的每页的行数(*)
            search: true,                       //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
            strictSearch: true,                //设置为 true启用 全匹配搜索,否则为模糊搜索
            showRefresh: true,                  //是否显示刷新按钮
            minimumCountColumns: 2,             //最少允许的列数
            clickToSelect: true,                //是否启用点击选中行
            uniqueId: "id",                 //每一行的唯一标识,一般为主键列\
            sortStable: true,
            columns: [
                {checkbox: true},
                {field: 'id', title: '工号',align: 'center'},
                {field: 'name', title: '姓名',align: 'center'},
                {field: 'sex', title: '性别',align: 'center'},
                {field: 'age', title: '年龄',align: 'center'},
                {field: 'phone', title: '手机号',align: 'center'},
                {field: 'account', title: '账号',align: 'center'},
                {field: 'address', title: '位置',align: 'center'},
                {
                    field: 'status',
                    title: '状态',
                    /**
                     * formatter 列函数 表示对当前列的数据进行格式化的操作
                     * @param value 表示当前单元格中的值
                     * @param row 表示当前行
                     * @param index 表示当前行的下表
                     */
                    formatter:function (value,row,index) {
                            console.log(value);
                            if(value==1){
                                status="空闲";
                            }else if(value==0){
                                status="请假";
                            }else if(value==2){
                                status="休息";
                            }

                        return status;
                    }
                },
                {
                    field: 'operator',
                    title: '操作',
                    align: 'center',
                    sortable: true,
                    width:'10%',
                    formatter: function (value, row, index) {
                        return '<a href="#" data-target="#updateForm"data-toggle="modal" title="修改">' +
                            '<i class="glyphicon glyphicon-pencil"></i>' +
                            '</a>'+
                            '<a href="javascript:void(0)" title="删除">' +
                            '<i class="glyphicon glyphicon-trash text-danger"></i>' +
                            '</a>';
                    },
                    events: {
                        'click a[title=删除]': function (e, value, row, index) {
                          //可以设置'删除的'的单击事件
                        },
                        'click a[title=修改]': function (e, value, row, index) {
             			 //可以设置'修改'的单击事件
                        },
                    }
                }
            ]
        });
    })

后端

controller

	@RequestMapping("/getPageResultOrders")
    @ResponseBody
    public Map<String,Object> getPageResultOrders(Integer pageNumber, Integer pageSize, Orders c, HttpServletRequest req, HttpServletResponse resp) throws UnsupportedEncodingException, NoSuchAlgorithmException {
        pageNumber= (pageNumber/pageSize)+1;
        PageResult ordersCheck = ordersService.getPageResultOrders(pageNumber,pageSize,c);
       /*c.setPhone(req.getParameter("phone"));
        c.setName(req.getParameter("name"));*/
        //System.out.println(c.getPhone()+" "+c.getName());
        List<Orders> list = ordersCheck.getRows();
        for (Orders m:list ) {
                String addresss = LngAndLatUtil.getLngAndLat(m.getLng(), m.getLat());
                m.setComAddress(addresss);
            System.out.println( m.getComAddress());
        }

        Map<String, Object> map = new HashMap<>();
        map.put("total",ordersCheck.getTotal());
        map.put("rows",ordersCheck.getRows());
        return map;
    }

分页 Service

public PageResult getPageResultOrders(int pageNum, int pageSize, Orders o) {
        PageHelper.startPage(pageNum,pageSize);
        List<Orders> list = dao.getOrdersAll(o);
        Page page =(Page) list;
        PageResult pageResult = new PageResult(page.getPageNum(), page.getTotal(), page.getResult(), page.getPages());
        return pageResult;
    }

分页插件 pom.xml中的配置

		<!--分页插件  -->
		<dependency>
			<groupId>com.github.pagehelper</groupId>
			<artifactId>pagehelper</artifactId>
			<version>5.1.2</version>
		</dependency>

分页中sqlConfigMap.xml的配置

		<plugins>
	   <!-- &lt;!&ndash; 5.0之前配置方式
		 com.github.pagehelper 为 PageHelper 类所在包名
		<plugin interceptor="com.github.pagehelper.PageHelper">
			设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL 六种数据库
			<property name="dialect" value="mysql"/>
		</plugin>
		 &ndash;&gt;
		 &lt;!&ndash; 5.0之后配置方式 &ndash;&gt;-->
		<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
	</plugins>
	<!--
	在这里说一下mybits中sql日志的打印
	-->
	<settings>
		<!-- 打印sql日志 -->
		<setting name="logImpl" value="STDOUT_LOGGING" />
	</settings>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Too_Soup_Soup

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值