1. 程式人生 > >表格外掛-bootstrap table的分頁使用示例

表格外掛-bootstrap table的分頁使用示例

5640239-1106df38e1b1f60f.png

1:在官網上下載相關的檔案之後,步驟下載之後引入:

<!-- 引入的css檔案  -->
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" />
<link href="bootstrap-table/dist/bootstrap-table.min.css"
    rel="stylesheet">
<!-- 引入的js檔案 -->
<script src="jquery/jquery.min.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="bootstrap-table/dist/bootstrap-table.min.js"></script>
<script src="bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js"></script>

2:html介面

<div class="mytab">
                <table id="mytab" class="table table-hover"></table>
                </div>

3:js程式碼

$('#mytab').bootstrapTable({
        method : 'post',
        // contentType:
        // "application/x-www-form-urlencoded",//當請求方法為post的時候,必須要有!!!!
        url : path + "/user/list",// 請求路徑
        striped : true, // 是否顯示行間隔色
        pageNumber : 1, // 初始化載入第一頁
        pagination : true,// 是否分頁
        sidePagination : 'client',// server:伺服器端分頁|client:前端分頁
        pageSize : 4,// 單頁記錄數
        pageList : [ 5, 10, 20, 30 ],// 可選擇單頁記錄數
        //showRefresh : true,// 重新整理按鈕
        queryParams : function(params) {// 上傳伺服器的引數
            var temp = {// 如果是在伺服器端實現分頁,limit、offset這兩個引數是必須的
                limit : params.limit, // 每頁顯示數量
                offset : params.offset, // SQL語句起始索引
            // page: (params.offset / params.limit) + 1, //當前頁碼

            };
            return temp;
        },
        columns : [ {
            title : '登入名',
            field : 'loginName',
            sortable : true
        }, {
            title : '暱稱',
            field : 'nickName',
            sortable : true
        }, {
            title : '角色',
            field : 'roleName',
        }, {
            title : '操作',
            field : 'id',
            formatter : option
        } ]
    })

4:完整的新增資料之後顯示在表格裡面,自動分頁程式碼,刪除和編輯效果
jsp介面 :

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html lang="en">
<head>

<%
    String path = request.getRequestURI();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path;
%>
<base href="<%=basePath%>">


  <title>使用者管理</title>

  <link rel="stylesheet" type="text/css" href="../../common/bootstrap/css/bootstrap.min.css"/>
  <link rel="stylesheet"  href="../../common/bootstrap-table/bootstrap-table.min.css">
  <link rel="stylesheet" type="text/css" href="../../css/user/user.css"/>
<style>
</style>
</head>
<body >
  
  
  <div class="page-content-wrapper">
    <div class="page-content">
        <div class="row">
            <div class="col-md-12">
                <div class="portlet-title">
                    <a href="javascript:;" class="btn default yellow-stripe" id="userAdd"><i class=""></i><span class="hidden-480"> 新增使用者</span></a>
                </div>

                <div class="mytab">
                <table id="mytab" class="table table-hover"></table>
                </div>
            </div>
        </div>
    </div>
</div>


<script type="text/javascript" src="../../js/jquery-1.9.1.js"/></script>

<script src="../../common/bootstrap/js/bootstrap.min.js"></script>
<script src="../../common/bootstrap-table/bootstrap-table.min.js"></script>
<script src="../../common/bootstrap-table/bootstrap-table-zh-CN.min.js"></script>
<script src="../../js/user/user.js"/></script>
<!-- 彈框 -->
<script src="../../common/layer/layer.js"></script>
<script src="../../common/layer/extend/layer.ext.js"></script>
    

</body>
</html>

js程式碼:

var path = getContextPath();

$(function() {
    $('#mytab').bootstrapTable({
        method : 'post',
        // contentType:
        // "application/x-www-form-urlencoded",//當請求方法為post的時候,必須要有!!!!
        url : path + "/user/list",// 請求路徑
        striped : true, // 是否顯示行間隔色
        pageNumber : 1, // 初始化載入第一頁
        pagination : true,// 是否分頁
        sidePagination : 'client',// server:伺服器端分頁|client:前端分頁
        pageSize : 4,// 單頁記錄數
        pageList : [ 5, 10, 20, 30 ],// 可選擇單頁記錄數
        //showRefresh : true,// 重新整理按鈕
        queryParams : function(params) {// 上傳伺服器的引數
            var temp = {// 如果是在伺服器端實現分頁,limit、offset這兩個引數是必須的
                limit : params.limit, // 每頁顯示數量
                offset : params.offset, // SQL語句起始索引
            // page: (params.offset / params.limit) + 1, //當前頁碼

            };
            return temp;
        },
        columns : [ {
            title : '登入名',
            field : 'loginName',
            sortable : true
        }, {
            title : '暱稱',
            field : 'nickName',
            sortable : true
        }, {
            title : '角色',
            field : 'roleName',
        }, {
            title : '操作',
            field : 'id',
            formatter : option
        } ]
    })

    // 定義刪除、更新操作
    function option(value, row, index) {
        var htm = '<button id="delUser" userId='
                + value
                + ' onclick="delUser(this)">刪除</button><button id="dupUser" onclick="updUser('
                + value + ')">修改</button>'
        return htm;
    }

    // 查詢按鈕事件
    $('#search_btn').click(function() {
        $('#mytab').bootstrapTable('refresh', {
            url : path + '/user/list'
        });
    })

    // 新增使用者
    $("#userAdd").on("click", function() {
        layer.open({
            type : 2,
            title : '新增使用者',
            area : [ '500px', '440px' ],
            fix : false, // �
            content : path + '/user/pageAdd',
            end : function() {
                $("#mytab").bootstrapTable('refresh', {
                    url : path + "/user/list"
                });
            }
        });
    });

})

// 刪除使用者
function delUser(dom) {
   
    var mymessage = confirm("確認刪除嘛?");
    if (mymessage == true) {
        $.ajax({
            url : path + '/user/' + $(dom).attr("userId"),
            type : 'delete',
            success : function(data) {
                $(dom).parent().parent().hide();
            },
            error : function(data){
                alert("伺服器繁忙")
            }
        });
    }
}

// 編輯使用者
function updUser(id) {
    layer.open({
        type : 2,
        title : '編輯使用者',
        area : [ '500px', '440px' ],
        fix : false, // �
        content : path + '/user/pageUpd/' + id,
        end : function() {
            $("#mytab").bootstrapTable('refresh', {
                url : path + "/user/list"
            });
        }
    });
}

// 獲取專案路徑
function getContextPath() {
    var currentPath = window.document.location.href;
    var pathName = window.document.location.pathname;
    var pos = currentPath.indexOf(pathName);
    var localhostPath = currentPath.substring(0, pos);
    var projectName = pathName
            .substring(0, pathName.substr(1).indexOf('/') + 1);
    return (localhostPath + projectName);
}

原文作者:祈澈姑娘 技術部落格:https://www.jianshu.com/u/05f416aefbe1
90後前端妹子,愛程式設計,愛運營,愛折騰。 堅持總結工作中遇到的技術問題,堅持記錄工作中所所思所見,歡迎大家一起探討交流。