溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Bootstrap-Table實現分頁和排序

發布時間:2020-07-10 10:21:59 來源:億速云 閱讀:1015 作者:Leah 欄目:web開發

如何使用Bootstrap-Table實現分頁和排序?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

前幾天尋找了幾個表格插件之后,開始研究如何使用其中的某個插件來實現需求,需求如下:

  1.能夠使用jquery.load直接加載一個片段過來,作為tbody的內容。

  2.能夠點擊列頭排序。

  3.能夠分頁,而這種分頁能夠支持服務器端分頁。

最后通過Bootstrap-Table這款插件實現,下面為大家介紹實現的具體過程:

1、引用插件

按官網的Getting started引用該插件所必須的css和js文件,如下:

<link rel="stylesheet" href="bootstrap.min.css">
<link rel="stylesheet" href="bootstrap-table.css">
<script src="jquery.min.js"></script>
<script src="bootstrap.min.js"></script>
<script src="bootstrap-table.js"></script>
<-- put your locale files after bootstrap-table.js -->
<script src="bootstrap-table-zh-CN.js"></script>

2、建立Table

在HTML頁面中建立一個用于展示數據的Table,這個Table在隨后的步驟中將被Bootstrap-Table初始化,如下:

<table id="dataTable">
    <thead>
    <tr>
        <th data-field="fullname" data-sortable="true">名稱</th>
        <th data-field="shortname" data-sortable="true">簡稱</th>
        <th data-field="address" data-sortable="true">地址</th>
        <th data-field="linkman" data-sortable="true">聯系人</th>
        <th data-field="tel" data-sortable="true">聯系電話</th>
        <th>操作</th>
    </tr>
    </thead>
    <tbody id="dataBody">

    </tbody>
</table>

3、初始化Table

使用Javascript將Table初始化,并且自定義一些函數來滿足之前的需求,代碼如下:

$(document).ready(function(){
    initTable("dataTable");
});
//自定義ajax
function ajaxRequest(params){
    //訪問服務器獲取所需要的數據
    //比如使用$.ajax獲得請求某個url獲得數據
    $.ajax({
        type : 'post',
        url : '/list.do',
        data : parames.data,
        success  : function(e){
            if(e.code == 200){
                //表格加載數據
                parames.success({
                    total : total,//符合查詢條件的數據總量
                    rows : [{}]//創建一個空行,此處要注意,如果去除,將不會顯示任何行
                });
                //加載一個片段,形如<tr><td>..</td>...</tr><tr><td>..</td>...</tr>
                $.ajax({
                    type     : 'post',
                    url      : '/body.do',
                    data : parames.data,
                    dataType : 'html',
                    success  : function(e){
                        $("#dataBody").html(e);
                    }
                });
            }
        }
    });
}
//自定義參數
function postQueryParams(params) {
    params.cname = $("#customerName").val();
    return params;
}
//初始化
function initTable(tableId){
    $("#" + tableId).bootstrapTable({
        classes : "table table-bordered table-hover table-striped",//加載的樣式
        ajax : "ajaxRequest",//自定義ajax
        search : false,//不開啟搜索文本框
        sidePagination : "server",//使用服務器端分頁
        pagination : "true",//開啟分頁
        queryParams : "postQueryParams",//自定義參數
        pageSize : 8,//每頁大小
        pageList : [8, 16, 32, 64]//可以選擇每頁大小
    });
}
//查詢時,先銷毀,然后再初始化
$("#btnSearch").click(function(){
    $("#dataTable").bootstrapTable('destroy');
    initTable("dataTable");
});

經過以上構建,dataTable就可以滿足開始的需求,排序和分頁均由服務器端完成,數據不必在服務器端進行轉換,而是通過加載一個頁面片段來實現,可以更加方便的開發。效果如下:

如何使用Bootstrap-Table實現分頁和排序

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女