• bootstrap的简单学习


    最近做项目用到这个bootstrap,然后其实也没有做很深的研究,就是能大概知道怎么用。

    然后在学习中,很关键的就是你要去看源代码,只有看懂了这个,你才知道说怎么调用,然后你以后可以怎么做。

    下面试我从别的博主那copy过来的,以后可以参考,只有是bootstrap中的table的一些节点的。

    下面的配置文件和一些事件的重写呢,你可以查看文档,或者自己去看看你源码 
    这里你可以进行重写哦~~ ,extentd进行重新的覆盖!

    BootstrapTable.DEFAULTS = {
            classes: 'table table-hover',
            locale: undefined,
            height: undefined,
            undefinedText: '-',
            sortName: undefined,
            sortOrder: 'asc',
            sortStable: false,
            striped: false,
            columns: [[]],
            data: [],
            dataField: 'rows',
            method: 'get',
            url: undefined,
            ajax: undefined,
            cache: true,
            contentType: 'application/json;charset=UTF-8',//这里我就加了个utf-8
            dataType: 'json',
            ajaxOptions: {},
            queryParams: function (params) {//这个是设置查询时候的参数,我直接在源码中修改过,不喜欢offetset 我后台用的                    是pageNo. 这样处理就比较的满足我的要求,其实也可以在后台改,麻烦!
                return params;
            },
            queryParamsType: 'limit', // undefined (这里是根据不同的参数,选择不同的查询的条件)
            responseHandler: function (res) {//这里我查看源码的,在ajax请求成功后,发放数据之前可以对返回的数据进行处理,返回什么部分的数据,比如我的就需要进行整改的!
                return res;
            },
            pagination: false,
            onlyInfoPagination: false,
            sidePagination: 'client', // client or server
            totalRows: 0, // server side need to set
            pageNumber: 1,
            pageSize: 10,
            pageList: [10, 25, 50, 100],
            paginationHAlign: 'right', //right, left
            paginationVAlign: 'bottom', //bottom, top, both
            paginationDetailHAlign: 'left', //right, left
            paginationPreText: '‹',
            paginationNextText: '›',
            search: false,
            searchOnEnterKey: false,
            strictSearch: false,
            searchAlign: 'right',
            selectItemName: 'btSelectItem',
            showHeader: true,
            showFooter: false,
            showColumns: false,
            showPaginationSwitch: false,//展示页数的选择?
            showRefresh: false,
            showToggle: false,
            buttonsAlign: 'right',
            smartDisplay: true,
            escape: false,
            minimumCountColumns: 1,
            idField: undefined,
            uniqueId: undefined,
            cardView: false,
            detailView: false,
            detailFormatter: function (index, row) {
                return '';
            },
            trimOnSearch: true,
            clickToSelect: false,
            singleSelect: false,
            toolbar: undefined,
            toolbarAlign: 'left',
            checkboxHeader: true,
            sortable: true,
            silentSort: true,
            maintainSelected: false,
            searchTimeOut: 500,
            searchText: '',
            iconSize: undefined,
            buttonsClass: 'default',
            iconsPrefix: 'glyphicon', // glyphicon of fa (font awesome)
            icons: {
                paginationSwitchDown: 'glyphicon-collapse-down icon-chevron-down',
                paginationSwitchUp: 'glyphicon-collapse-up icon-chevron-up',
                refresh: 'glyphicon-refresh icon-refresh',
                toggle: 'glyphicon-list-alt icon-list-alt',
                columns: 'glyphicon-th icon-th',
                detailOpen: 'glyphicon-plus icon-plus',
                detailClose: 'glyphicon-minus icon-minus'
            },
    
            customSearch: $.noop,
    
            customSort: $.noop,
    
            rowStyle: function (row, index) {
                return {};
            },
    
            rowAttributes: function (row, index) {
                return {};
            },
    
            footerStyle: function (row, index) {
                return {};
            },
    
            onAll: function (name, args) {
                return false;
            },
            onClickCell: function (field, value, row, $element) {
                return false;
            },
            onDblClickCell: function (field, value, row, $element) {
                return false;
            },
            onClickRow: function (item, $element) {
                return false;
            },
            onDblClickRow: function (item, $element) {
                return false;
            },
            onSort: function (name, order) {
                return false;
            },
            onCheck: function (row) {
                return false;
            },
            onUncheck: function (row) {
                return false;
            },
            onCheckAll: function (rows) {
                return false;
            },
            onUncheckAll: function (rows) {
                return false;
            },
            onCheckSome: function (rows) {
                return false;
            },
            onUncheckSome: function (rows) {
                return false;
            },
            onLoadSuccess: function (data) {
                return false;
            },
            onLoadError: function (status) {
                return false;
            },
            onColumnSwitch: function (field, checked) {
                return false;
            },
            onPageChange: function (number, size) {
                return false;
            },
            onSearch: function (text) {
                return false;
            },
            onToggle: function (cardView) {
                return false;
            },
            onPreBody: function (data) {
                return false;
            },
            onPostBody: function () {
                return false;
            },
            onPostHeader: function () {
                return false;
            },
            onExpandRow: function (index, row, $detail) {
                return false;
            },
            onCollapseRow: function (index, row) {
                return false;
            },
            onRefreshOptions: function (options) {
                return false;
            },
            onRefresh: function (params) {
              return false;
            },
            onResetView: function () {
                return false;
            }
        };
    

      

    function initTable() {
          $table.bootstrapTable({
            striped: true,  //表格显示条纹
            pagination: true, //启动分页
            pageSize: 15,  //每页显示的记录数
            pageNumber:1, //当前第几页
            pageList: [10, 15, 20, 25],  //记录数可选列表
            search: false,  //是否启用查询
            showColumns: true,  //显示下拉框勾选要显示的列
            showRefresh: true,  //显示刷新按钮
            sidePagination: "server", //表示服务端请求
            //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
            //设置为limit可以获取limit, offset, search, sort, order
            responseHandler:function(res){
              //远程数据加载之前,处理程序响应数据格式,对象包含的参数: 我们可以对返回的数据格式进行处理
              //在ajax后我们可以在这里进行一些事件的处理
              return res.data;
            },
            queryParamsType : "undefined",
            queryParams: function queryParams(params) {   //设置查询参数
              var param = {
                //这里是在ajax发送请求的时候设置一些参数 params有什么东西,自己看看源码就知道了
                pageNo: params.pageNumber,
                pageSize: params.pageSize
              };
              return param;
            },
            onLoadSuccess: function(data){  //加载成功时执行
              alert("加载成功"+data);
            },
            onLoadError: function(){  //加载失败时执行
              layer.msg("加载数据失败", {time : 1500, icon : 2});
            },
            height: getHeight(),
            columns: [
              {
                field: 'state',
                checkbox: true,
                align: 'center',
                valign: 'middle'
              }, {
                title: 'ID',
                field: 'id',
                align: 'center',
                valign: 'middle'
              },
              {
                field: 'userName',
                title: 'UserName',
                sortable: true,
                footerFormatter: totalNameFormatter,
                align: 'center'
              }, {
                field: 'userType',
                title: 'UserType',
                sortable: true,
                align: 'center'
              },
              {
                field: 'password',
                title: 'UserPass',
                sortable: true,
                align: 'center'
              },{
                field: 'indexcode',
                title: 'Indexcode',
                sortable: true,
                align: 'center'
              },{
                field: 'operate',
                title: 'Item Operate',
                align: 'center',
                events: operateEvents,
                formatter: operateFormatter
              }
            ]
          });
    

      

    以上为我暂时有需要的,然后如果说你想要做一些事件处理,或者是添加按钮什么之类的可以参考jquery_table.js之类的,这都是可以从源文件中获取的。

    例子:

     table.bootstrapTable({
                    url: $.fn.bootstrapTable.defaults.extend.index_url,//我进行了写,如果你没有那么直接填写你要的地址就可以了
                    advancedSearch: false,
                    showColumns: false,
                    columns: [
                        [
                            // {field: 'state', checkbox: true, },
                            {field: 'channelname', title: __('Cn_name')},
                            {field: 'channelcode', title: __('Cn_code')},
                            {field: 'code', title: __('Pk_code')},
    
                            {field: 'update_time', title: __('Update_time'), formatter: Table.api.formatter.datetime},
                            {
                                field: 'p_id', title: __('Operate'), events: {
                                    'click .btn-makeone': function (e, value, row, index) {
                                        var that = this;
                                        var index = Backend.api.layer.confirm(
                                            __('Are you sure you want to make the  selected %s key?',row.channelname),//这里就是返回提示,你可以按你的需求返回中文提示,
    //我是后台有对数据进行转换所以这么使用,有带__这个的都是有数据转换处理 {icon: 3, title: __('Warning'), offset: [$(that).offset().top, $(that).offset().left - 260], shadeClose: true}, function () { var table = $(that).closest('table'); Table.api.multi("make", row.id, table, that); Backend.api.layer.close(index); } ); } }, formatter: function (value, row, index) { //行操作 var html = []; if(value==undefined||value==null) html.push('<a href="javascript:;" class="btn btn-success btn-makeone btn-xs">生成</a>'); else html.push('-'); return html.join(' '); } } ] ] });

      

    参考:http://www.cnblogs.com/yinglunstory/p/6092834.html

    table的挂载:http://www.cnblogs.com/MirageFox/p/5981867.html

  • 相关阅读:
    SpringBoot Shiro 配置自定义密码加密器
    SpringBoot Druid 配置详解
    UOJ #164. 【清华集训2015】V | 线段树
    BZOJ 4552 [Tjoi2016&Heoi2016]排序 | 二分答案 线段树
    51nod 1462 树据结构 | 树链剖分 矩阵乘法
    BZOJ 3503 [CQOI2014]和谐矩阵
    BZOJ 4004 [JLOI2015]装备购买 | 线性基
    BZOJ 4785 [Zjoi2017]树状数组 | 二维线段树
    LOJ #2145. 「SHOI2017」分手是祝愿
    LOJ #2141. 「SHOI2017」期末考试
  • 原文地址:https://www.cnblogs.com/-lin/p/6761098.html
Copyright © 2020-2023  润新知