zoukankan      html  css  js  c++  java
  • python测试开发django-146.bootstrap-table列属性设置(Column)

    前言

    Bootstrap Table Column的相关列属性和设置例如field、title、titleTooltip、width、class等属性,要使用Bootstrap Table首先要定义列

    基本设置

    先准备数据源,包含"total" 和 "rows"

    {
            "total": 22, 
            "rows": [
                    {
                            "id": 1, 
                            "name": "悠悠老师", 
                            "age": 20, 
                            "tel": "12313231", 
                            "is_delete": "0"
                    }, 
                    {
                            "id": 2, 
                            "name": "张三老师", 
                            "age": 22, 
                            "tel": "21122121", 
                            "is_delete": "0"
                    }, 
                    {
                            "id": 3, 
                            "name": "李四老师", 
                            "age": 22, 
                            "tel": "1121212", 
                            "is_delete": "0"
                    }
    
            ]
    }
    

    html页面代码

    <body>
    <div class="container-fluid">
        <h1>bootstrapTable实例</h1>
        <table id="table" data-toolbar="#toolbar"></table>
    </div>
    </body>
    

    bootstrapTable配置参数

    <script>
        var url = '/teacher/info';
        var columns = [
            {
                checkbox: true,
                visible: true                  //是否显示复选框
            },
            {
                field: 'id',
                title: 'ID'
    
            }, {
                field: 'name',
                title: '姓名'
            }, {
                field: 'age',
                title: '年龄'
            },
             {
                field: 'tel',
                title: '电话'
            },
             {
                field: 'is_delete',
                title: '状态'
            }
        ];
        $("#table").bootstrapTable({
            url: url,                           //请求后台的URL(*)
            method: 'get',                      //请求方式(*)
            columns: columns                 //列参数
    
        });
    
    </script>
    

    页面显示效果

    自定义显示列内容

    上面看到is_delete字段内容显示0或1这种,这是接口返回过来的值,但是我们在页面上需要自己转成 "正常" 或者 "禁用" 这种文字。
    可以用到 formatter 自定义显示内容,格式参考如下

    • value 是该字段原始的值(如is_delete字段返回的0或1)
    • item 是返回的整个一行内容:{"id": 1, "name": "悠悠老师", "age": 20, "tel": "12313231", "is_delete": "0"}
    • index 是列表中是索引值
     formatter: function(value, item, index) {
            if (value==0) {
                return '正常';
            }
            else if (value==1) {
               return '禁用';
            }
        }
    

    修改后完整内容

    <script>
        var url = '/teacher/info';
        var columns = [
            {
                checkbox: true,
                visible: true                  //是否显示复选框
            },
            {
                field: 'id',
                title: 'ID'
    
            }, {
                field: 'name',
                title: '姓名'
            }, {
                field: 'age',
                title: '年龄'
            },
             {
                field: 'tel',
                title: '电话'
            },
             {
                 field: 'is_delete',
                 title: '状态',
                 formatter: function(value, item, index) {
                     if (value==0) {
                        return '正常';
                     }
                     else if (value==1) {
                       return '禁用';
                     }
        }
    
        }];
        $("#table").bootstrapTable({
            url: url,                           //请求后台的URL(*)
            method: 'get',                      //请求方式(*)
            columns: columns                 //列参数
    
        });
    
    </script>
    

    页面显示效果

    新增其它字段

    我们也可以在表格中添加其它字段,比如添加一个主页地址,主页地址根据id字段拼接,格式:/teacher/{id}

         {
                 field: 'home',
                 title: '首页',
                 formatter: function(value, item, index) {
                   return '<a href="/teacher/' + item.id  +'" >主页</a>'
                 }
        }
    

    添加操作按钮

    在列表中添加操作按钮

    参考这篇 https://www.cnblogs.com/yoyoketang/p/15245059.html

    属性列表

    以下重要或非常有用的属性用√进行了标记

    列属性名称 html属性 说明
    field data-field √设置该列要绑定显示的字段如field:"id"
    title data-title √设置该列显示的文字标题,比如你绑定了num字段,你好显示num吧,设置title:"库存" 用户一看就明白了
    titleTooltip data-titleTooltip titleTooltip:"本月销售剩余库存",鼠标移动到列头上就会出现提示文字“本月销售剩余库存”
    class data-class 对某列设置单独的样式
    width data-width √200",该列的宽度为200 ,注意这里是数字类型不带单位px或者%
    widthUnit data-widthUnit widthUnit:"px" 列的宽度的单位如px或%
    rowspan data-rowspan rowspan:2 合两2行
    colspan data-colspan colspan:2 合并两列
    halign data-halign 表格头部列名对齐方式 'left', 'right', 'center'
    align data-align 表格数据的对齐方式 'left', 'right', 'center'
    falign data-falign 表格底部列对齐方式 'left', 'right', 'center'
    valign data-valign 垂直方向对齐方式 'top', 'middle', 'bottom'
    cellStyle data-cellStyle 自定义函数,单元格自定义样式function(value, row, index){ return "样式类名";}
    radio data-radio radio:true 表示该列为单选选择列
    checkbox data-checkbox √checkbox:true 表示该列为复选框选择列
    checkboxEnabled data-checkboxEnabled checkboxEnabled:false 禁用复选框列
    clickToSelect data-clickToSelect √{field:"name",clickToSelect:false}表示点击name这列时不会触发选中事件。
    showSelectTitle data-showSelectTitle showSelectTitle:"操作",在选择列的列头显示的名称
    sortable data-sortable sortable:true把该列设置为排序列,这时列头就会出现上下两个排序箭头
    sortname data-sortname 指定按那列进行排序,例如<th data-field="name" data-sortable="true" data-sort-name="id" data-sort-order="desc">Item Name</th>
    表示用户点击name这列的排序事件 按id字段进行倒序进行排序
    order data-order 排序方式 order:"asc"或者 order:"desc" 顺序或倒序进行排序
    visible data-visible visible:false 或者 true 隐藏或显示列
    switchable data-switchable true/false 当开启了列刷选时,switchable可以控制当前列是否可被刷选,默认为true
    cardVisible data-cardVisible true/false 当开启卡片模式时,设置该列是否在卡片中显示,默认true
    searchable data-searchable true/false 设置当前列数据是否可以被搜索,这里说的搜索是前端查询匹配非服务器端。
    footerFormatter data-footerFormatter √列底部格式化函数,可以用来做合计等功能 function nameFormatter(data) { return data.length }
    formatter data-formatter √自定义函数,比如状态字段在数据库中是0,1 可以通过formatter转换成 启用/停用 这样的文字显示而不是显示0或者1这样的数字,
    formatter: function(value, item, index) {
    if (value == 0) {
    return '正常';
    }
    else if (value == 1) {
    return '禁用';
    }
    }

    参考教程https://www.itxst.com/Bootstrap-Table/jn3ienrr.html

  • 相关阅读:
    Redis 字符串(String)
    Redis 哈希(Hash)
    Redis 键(key)
    Redis 命令
    Redis 数据类型
    Redis 配置
    Log4j 2X 日志文件路径问题
    shiro项目从 log4j1X 迁移到 log4j2X
    shiro+SpringMVC 项目 配置404页面
    邮件发送-》http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/15357855.html
Copyright © 2011-2022 走看看