2024年最全bootstrapTable的使用及表格的导出_bootstraptable 导出(2),阿里珍藏版Golang框架体系架构手写文档

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

        //分页方式:client客户端分页,server服务端分页(*)
        // sidePagination: "server",
        sidePagination: "client",
        //初始化加载第一页,默认第一页,并记录
        pageNumber: 1,
        //每页的记录行数(*)
        pageSize: 10,
        //可供选择的每页的行数(*) 当记录条数大于最小可选择条数时才会出现
        pageList: [10, 20, 50, 100],
        paginationPreText: '上一页',
        paginationNextText: '下一页',
        //是否显示表格搜索,bootstrap-table服务器分页不能使用搜索功能,可以自定义搜索框
        search: false,
        // search: true,
        strictSearch: true,
        //是否显示所有的列(选择显示的列)
        showColumns: true,
        //是否显示刷新按钮
        showRefresh: true,
        //最少允许的列数
        minimumCountColumns: 2,
        //单击选中列表
        clickToSelect: true,
        //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
        //height: 500,
        //每一行的唯一标识,一般为主键列
        uniqueId: "id",
        //是否显示 切换试图(table/card)按钮
        showToggle: true,
        //是否显示详细视图
        cardView: false,
        //是否显示父子表
        detailView: false,
        //是否导出数据
        showExport: true,
        Icons : 'glyphicon-export icon-share',
        //选择导出数据的范围,默认basic:只导出当前页的表格数据;all:导出所有数据;selected:导出选中的数据
        exportDataType: exportScope,
        //导出文件类型,因为导出png文件时会出现忽略的列也显示;导出PDF文件出现中文乱码的问题,所以根据需要只支持Excel文件类型即可
        //['json', 'xml', 'png', 'csv', 'txt', 'sql', 'doc', 'excel', 'pdf']
        exportTypes: ['excel'],
        // Icons:'glyphicon-export',
        // export: 'glyphicon-export icon-share',
        //导出设置
        exportOptions: {
            ignoreColumn: [0,11],  //忽略某一列的索引
            worksheetName: 'sheet1',  //表格工作区名称
            // tableName: '总台帐报表',
            //导出文件的名称
            fileName: 'bootstrapTable表格数据',
        },
        //得到查询的参数
        queryParams : function (params) {
            debugger;
            //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
            var temp = {
                name: $('#name').val(),
                phone : $('#phone').val(),
                // pageSize: params.limit, //页面大小
                pageSize: 10, //页面大小
                // pageNumber: (params.offset / params.limit) + 1, //页码
                pageNumber: 1, //页码
                sortOrder: params.order //排序方式(desc,asc)
            };
            return temp;
        },
        columns: [{
            checkbox: true,
            visible: true  //是否显示复选框
            // visible: $(this).val() === 'selected'
        }, {
            field: 'name',
            title: '姓名',
            sortable: true
        }, {
            field: 'phone',
            title: '手机号码',
            sortable: true
        }, {
            field: 'email',
            title: '邮箱',
            sortable: true,
            formatter: emailFormatter
        }, {
            field: 'homePage',
            title: '主页',
            formatter: linkFormatter
        }, {
            field: 'hobby',
            title: '兴趣爱好'
        }, {
            field: 'gender',
            title: '性别',
            sortable: true,
            formatter:sexFormatter
        }, {
            field: 'age',
            title: '年龄'
        }, {
            field: 'birthDate',
            title: '出生日期'
        }, {
            field: 'height',
            title: '身高'
        }, {
            field: 'note',
            title: '备注'
        }, {
            field:'id',
            title: '操作',
            width: 120,
            align: 'center',
            valign: 'middle',
            formatter: actionFormatter
        }, ],
        onLoadSuccess: function () {
        },
        onLoadError: function () {
            alert("数据加载失败!");
        },
        //双击行数据的事件
        onDblClickRow: function (row, $element) {
            // var id = row.ID;
            // EditViewById(id, 'view');
        },
    });
}

//连接字段格式化
function linkFormatter(value, row, index) {
    return "<a href='" + value + "' title='单击打开连接' target='_blank'>" + value + "</a>";
}
//Email字段格式化
function emailFormatter(value, row, index) {
    return "<a href='mailto:" + value + "' title='单击打开连接'>" + value + "</a>";
}
//性别字段格式化
function sexFormatter(value) {
    var sex = "";
    if (value === "0") {
        color = 'Red';
        sex = "女";
    }
    else if (value === "1") {
        color = 'Green';
        sex = "男";
    }
    else {
        color = 'Yellow';
    }
    return '<div  style="color: ' + color + '">' + sex + '</div>';
}
//操作栏的格式化
function actionFormatter(value, row, index) {
    var id = value;
    var result = "";
    result += "<a href='javascript:;' class='btn btn-xs green' onclick=\"EditViewById('" + id + "', view='view')\" title='查看'><span class='glyphicon glyphicon-search'></span></a>";
    result += "<a href='javascript:;' class='btn btn-xs blue' onclick=\"EditViewById('" + id + "')\" title='编辑'><span class='glyphicon glyphicon-pencil'></span></a>";
    result += "<a href='javascript:;' class='btn btn-xs red' onclick=\"DeleteByIds('" + id + "')\" title='删除'><span class='glyphicon glyphicon-remove'></span></a>";
    return result;
}

$(function () {
    //调用函数,初始化表格,导出时默认导出全部
    initTable('all');
});

function query(){
    initTable('all');
}

// 自定义按钮导出数据
function exportData(){
    //选择导出的数据类型
    var dataType = $('#selectExportDataType').val();
    initTable(dataType);
    // debugger;
    // $('#table').tableExport({
    //     type: 'excel',
    //     // One of 'head', 'data', 'all'
    //     jsonScope: 'all',
    //     //忽略某一列的索引
    //     ignoreColumn: [0,11],
    //     //表格工作区名称
    //     worksheetName: 'sheet1',
    //     //下载文件名称
    //     fileName: '自定义导出数据',
    //     //处理导出内容,自定义某一行、某一列、某个单元格的内容
    //     onCellHtmlData: function (cell, row, col, data){
    //         // console.info(data);
    //         return data;
    //     },
    // });
}
```

2.5完整代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
<!--    <meta name="viewport" content="width=device-width, initial-scale=1 user-scalable=no">-->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
    <title>Bootstrap使用</title>
    <!--jquery-->
    <script type="text/javascript" src="/jquery/jquery-3.5.1.min.js"></script>

    <!--bootstrap-->
    <link rel="stylesheet" type="text/css" href="/bootstrap-3.3.7-dist/css/bootstrap.min.css">
    <script type="text/javascript" src="/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>

    <!--bootstrap-table-->
    <link rel="stylesheet" type="text/css" href="/bootstrap-table/bootstrap-table.min.css">
    <script type="text/javascript" src="/bootstrap-table/bootstrap-table.min.js"></script>
    <script type="text/javascript" src="/bootstrap-table/locale/bootstrap-table-zh-CN.min.js"></script>

    <!-- bootstrap-table表格 -->
    <!--bootstrap-table-export-->
    <script src="/bootstrap-table-export/bootstrap-table-export.js"></script>
<!--    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.10.1/extensions/export/bootstrap-table-export.js"></script>-->

    <!--在客户端保存生成的导出文件-->
    <script src="/bootstrap-table-export/FileSaver.min.js"></script>
    <!--以XLSX(Excel 2007+ XML格式)格式导出表(SheetJS)-->
    <script src="/bootstrap-table-export/xlsx.core.min.js"></script>
    <!--将表导出为PDF文件-->
    <script src="/bootstrap-table-export/jspdf.min.js"></script>
    <script src="/bootstrap-table-export/jspdf.plugin.autotable.js"></script>
    <!--以PNG格式导出表格-->
    <!--对于IE支持包括 html2canvas 之前的 es6-promise-->
    <script src="/bootstrap-table-export/es6-promise.auto.min.js"></script>
    <script src="/bootstrap-table-export/html2canvas.min.js"></script>
    <!--无论期望的格式如何,最后都包含 tableexport.jquery.plugin(不是tableexport)-->
    <script src="/bootstrap-table-export/tableExport.min.js"></script>
</head>
<body>
<H2 align="center">bootstrapTable表格页面</H2>
<hr/>
<div class="container-fluid">
    <div id ="toolbar">
        <form class="form-inline" role="form" style="margin-left: 10px">
            <div class="form-group">
                <label for="name">姓名:</label>
                <input type="text" id="name" class="form-control" placeholder="请输入姓名">
            </div>
            <div class="form-group">
                <label for="phone">手机号码:</label>
                <input type="text" id="phone" class="form-control" placeholder="请输入手机号码">
            </div>
            <div class="form-group">
                <select id="selectExportDataType" class="form-control">
                    <option value="basic">导出当前页</option>
                    <option value="selected">导出所选数据</option>
                    <option value="all">导出所有数据</option>
                </select>
            </div>
            <button onclick="query()" class="btn btn-default" style="background-color: rgb(88, 148, 255);color: #ffffff"><span class="glyphicon glyphicon-search"></span>&nbsp;&nbsp;查询</button>
            <button type="button" onclick="exportData()" class='btn btn-mini btn-info'>导出</button>
        </form>
    </div>
    <div>
        <table id="table"></table>
    </div>
</div>
</body>
<script>
    // 初始化表格
    function initTable(exportScope) {
        $('#table').bootstrapTable({
            //请求后台的URL(*)
            url: 'queryTableList',
            //请求方式(*)
            method: 'GET',
            //请求数据的格式
            dataType: "json",
            //工具按钮用哪个容器
            // toolbar: '#toolbar',
            //是否显示行间隔色
            striped: true,
            //当数据为 undefined 时显示的字符
            undefinedText: "无",
            //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
            cache: false,
            //是否显示分页(*)
            pagination: true,
            //是否启用排序
            sortable: true,
            //排序方式(desc,asc)
            sortOrder: "asc",
            //分页方式:client客户端分页,server服务端分页(*)
            // sidePagination: "server",
            sidePagination: "client",
            //初始化加载第一页,默认第一页,并记录
            pageNumber: 1,
            //每页的记录行数(*)
            pageSize: 10,
            //可供选择的每页的行数(*) 当记录条数大于最小可选择条数时才会出现
            pageList: [10, 20, 50, 100],
            paginationPreText: '上一页',
            paginationNextText: '下一页',
            //是否显示表格搜索,bootstrap-table服务器分页不能使用搜索功能,可以自定义搜索框
            search: false,
            // search: true,
            strictSearch: true,
            //是否显示所有的列(选择显示的列)
            showColumns: true,
            //是否显示刷新按钮
            showRefresh: true,
            //最少允许的列数
            minimumCountColumns: 2,
            //单击选中列表
            clickToSelect: true,
            //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
            //height: 500,
            //每一行的唯一标识,一般为主键列
            uniqueId: "id",
            //是否显示 切换试图(table/card)按钮
            showToggle: true,
            //是否显示详细视图
            cardView: false,
            //是否显示父子表
            detailView: false,
            //是否导出数据
            showExport: true,
            Icons : 'glyphicon-export icon-share',
            //选择导出数据的范围,默认basic:只导出当前页的表格数据;all:导出所有数据;selected:导出选中的数据
            exportDataType: exportScope,
            //导出文件类型,因为导出png文件时会出现忽略的列也显示;导出PDF文件出现中文乱码的问题,所以根据需要只支持Excel文件类型即可
            //['json', 'xml', 'png', 'csv', 'txt', 'sql', 'doc', 'excel', 'pdf']
            exportTypes: ['excel'],
            // Icons:'glyphicon-export',
            // export: 'glyphicon-export icon-share',
            //导出设置
            exportOptions: {
                ignoreColumn: [0,11],  //忽略某一列的索引
                worksheetName: 'sheet1',  //表格工作区名称
                // tableName: '总台帐报表',
                //导出文件的名称
                fileName: 'bootstrapTable表格数据',
            },
            //得到查询的参数
            queryParams : function (params) {
                debugger;
                //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
                var temp = {
                    name: $('#name').val(),
                    phone : $('#phone').val(),
                    // pageSize: params.limit, //页面大小
                    pageSize: 10, //页面大小
                    // pageNumber: (params.offset / params.limit) + 1, //页码
                    pageNumber: 1, //页码
                    sortOrder: params.order //排序方式(desc,asc)
                };
                return temp;
            },
            columns: [{
                checkbox: true,
                visible: true  //是否显示复选框
                // visible: $(this).val() === 'selected'
            }, {
                field: 'name',
                title: '姓名',
                sortable: true
            }, {
                field: 'phone',
                title: '手机号码',
                sortable: true
            }, {
                field: 'email',
                title: '邮箱',
                sortable: true,
                formatter: emailFormatter
            }, {
                field: 'homePage',
                title: '主页',
                formatter: linkFormatter
            }, {
                field: 'hobby',
                title: '兴趣爱好'
            }, {
                field: 'gender',
                title: '性别',
                sortable: true,
                formatter:sexFormatter
            }, {
                field: 'age',
                title: '年龄'
            }, {
                field: 'birthDate',
                title: '出生日期'
            }, {
                field: 'height',
                title: '身高'
            }, {
                field: 'note',
                title: '备注'
            }, {
                field:'id',
                title: '操作',
                width: 120,
                align: 'center',
                valign: 'middle',
                formatter: actionFormatter
            }, ],
            onLoadSuccess: function () {
            },
            onLoadError: function () {
                alert("数据加载失败!");
            },
            //双击行数据的事件
            onDblClickRow: function (row, $element) {
                // var id = row.ID;
                // EditViewById(id, 'view');
            },
        });
    }

    //连接字段格式化
    function linkFormatter(value, row, index) {
        return "<a href='" + value + "' title='单击打开连接' target='_blank'>" + value + "</a>";
    }
    //Email字段格式化
    function emailFormatter(value, row, index) {
        return "<a href='mailto:" + value + "' title='单击打开连接'>" + value + "</a>";
    }
    //性别字段格式化
    function sexFormatter(value) {
        var sex = "";
        if (value === "0") {
            color = 'Red';
            sex = "女";
        }
        else if (value === "1") {
            color = 'Green';
            sex = "男";
        }
        else {
            color = 'Yellow';
        }
        return '<div  style="color: ' + color + '">' + sex + '</div>';
    }
    //操作栏的格式化
    function actionFormatter(value, row, index) {
        var id = value;
        var result = "";
        result += "<a href='javascript:;' class='btn btn-xs green' onclick=\"EditViewById('" + id + "', view='view')\" title='查看'><span class='glyphicon glyphicon-search'></span></a>";
        result += "<a href='javascript:;' class='btn btn-xs blue' onclick=\"EditViewById('" + id + "')\" title='编辑'><span class='glyphicon glyphicon-pencil'></span></a>";
        result += "<a href='javascript:;' class='btn btn-xs red' onclick=\"DeleteByIds('" + id + "')\" title='删除'><span class='glyphicon glyphicon-remove'></span></a>";
        return result;
    }

    $(function () {
        //调用函数,初始化表格,导出时默认导出全部
        initTable('all');
    });

    function query(){
        initTable('all');
    }

    // 自定义按钮导出数据
    function exportData(){
        //选择导出的数据类型
        var dataType = $('#selectExportDataType').val();
        initTable(dataType);
        // debugger;
        // $('#table').tableExport({
        //     type: 'excel',
        //     // One of 'head', 'data', 'all'
        //     jsonScope: 'all',
        //     //忽略某一列的索引
        //     ignoreColumn: [0,11],
        //     //表格工作区名称
        //     worksheetName: 'sheet1',
        //     //下载文件名称
        //     fileName: '自定义导出数据',
        //     //处理导出内容,自定义某一行、某一列、某个单元格的内容
        //     onCellHtmlData: function (cell, row, col, data){
        //         // console.info(data);
        //         return data;
        //     },
        // });
    }

</script>
</html>

2.6 后台完整代码:

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

ol, data){
// // console.info(data);
// return data;
// },
// });
}

```

2.6 后台完整代码:

[外链图片转存中…(img-eKNRa9xW-1715670662681)]
[外链图片转存中…(img-9nwErRoN-1715670662682)]
[外链图片转存中…(img-dyWlDexT-1715670662682)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值