基於bootstrap3的 表格和分頁的插件


如題

樣式呢就是bootstrap3 的

功能呢就是實現表格和分頁

(以上廢話)

 

本來是自己沒事兒寫的一個js插件,曾經擱淺了一陣子,但最近由於公司項目的原因也需要這樣的一個插件,所以就撿起來做了個可以用的版本

首先看下實現效果

上面數據 下面分頁

 

使用方法

1 導入bootstrap的css

<link rel="stylesheet" href="css/v3/bootstrap.min.css">

 

2 導入jquery

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

 

3 導入表格分頁插件 lTable.js

<script src="js/lTable.js" type="text/javascript"></script>

4 添加html標簽 並對id 賦值

<!-- 表格 -->
<div id="d"></div>
<!-- 分頁 -->   
<div id="u"></div>

 

5 獲取數據

這里通過ajax獲取json文件的模擬數據

initTable(data)為初始化表格和分頁方法
$.ajax({
  url:"json/data.json",
  type:"GET",
  dataType: "json", 
  success:function(data){
    initTable(data);
  },
  error:function(e){
    alert("數據獲取錯誤");
  }
});

 

6 初始化表格

在初始化方法中 首先初始化表格

var obj=data;
var myTable=$.lTable(
        '#d',
        {
          data:obj.list    //json數據
                 ,title:["userid","username","password","userrolename","status","<button onclick='updF(id)'>修改</button>&nbsp;<button onclick='delF(id)'>刪除</button>"]    //標題對應字段 
                 ,name:["用戶id","用戶名稱","密碼","權限名稱","狀態","_opt"]
                 ,tid:"userid"
                 ,checkBox:"userid"
              }
            );

 

代碼說明

6.1初始化方法
    $.lTable('id',{data,title,name,tid,chechBox});

6.2屬性說明
    id:頁面選擇的填充塊
    data:頁面顯示的json數據
    title:表格每一列與數據對應的字段
    name:表格第一行顯示字段
    tid:每行對應的鍵值(可省略)
    checkBox:復選框對應的value(可省略)

6.3復選框說明
    當初始化添加 chechBox屬性時 激活
    復選框 name="ids"
    獲取已選列方法: $.lTable.getCheckboxIds() 返回值例 "1,2,3,4"

6.4操作咧說明
    當屬性name=_opt時 表格頭自動換位"操作"
    對應屬性title 可添加按鈕等操作
    例:"<button onclick='updF(id)'>修改</button>"  
    點擊方法為updF() 參數id 為屬性tid對應字段

 

 

7 初始化分頁

然后是分頁部分

 $.lPaging(
  '#u',    //對應id
    {
      pageNumber:obj.pageNumber     //當前頁數
      ,totalPage:obj.totalPage    //總頁數
      ,countSize:5    //分頁顯示個數    (可省略)
      ,count:obj.count
      ,inputSearch:true//顯示查詢輸入框
      ,onPageChange: function (num) {
        initPage(num,pageSize,dataUrl);
      }
    }
  );

代碼說明

7.1初始化方法    
    $.lPaging('id',{pageNumber,totalPage,countSize,count,onPageChange(num),inputSearch});
7.2屬性方法說明
  id:頁面選擇的填充塊
    pageNumber:當前頁數
    totalPage:總頁數
    countSize:分頁顯示個數(可省略 默認5)
    count:數據總數
    onPageChange(num):返回點擊事件
    inputSearch: 是否顯示查詢輸入框 boolean  默認false
    getInputVal():返回輸入框內數字

 

 

8 上整篇代碼

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <meta charset="utf-8">
 5     <meta http-equiv="X-UA-Compatible" content="IE=edge">
 6     <title></title>
 7     <link rel="stylesheet" href="css/v3/bootstrap.min.css">
 8 </head>
 9 <body>
10 
11         <!-- 表格 -->
12         <div id="d"></div>
13                      
14         <!-- 分頁 -->   
15         <div id="u"></div>
16     
17 </body>
18 
19 <script src="js/jquery-1.10.1.min.js" type="text/javascript"></script>
20 <script src="js/lTable.js" type="text/javascript"></script>
21 <script>
22     var pageSize=10;
23     var myTable;
24     var dataUrl="";
25     //初始化頁面
26     initPage(1,pageSize,"");
27     //ajax獲取數據
28     function initPage(num,ps,url){
29         
30         $.ajax({
31                url:"json/data.json",
32                type:"GET",
33             
34                //type:"POST",
35                //data:"userinfoVO.pageid="+num+"&userinfoVO.pagecount="+ps,
36                dataType: "json", 
37              success:function(data){
38                  initTable(data);
39                },
40                error:function(e){
41                    console.log(e)
42                    alert("數據獲取錯誤");
43                }
44           });
45     }
46       
47       //初始化table和分頁數據
48       function initTable(data){
49             //var obj = eval("("+data+")");
50             var obj=data;
51               //table
52               myTable=$.lTable(
53             '#d',
54                 {
55                     data:obj.list    //json數據
56                     ,title:["userid","username","password","userrolename","status","<button onclick='updF(id)'>修改</button>&nbsp;<button onclick='delF(id)'>刪除</button>"]    //標題對應字段 
57                     ,name:["用戶id","用戶名稱","密碼","權限名稱","狀態","_opt"]
58                     ,tid:"userid"
59                     ,checkBox:"userid"
60                 }
61              );
62              //myTable.getCheckboxIds(); //獲取checkbox選中的值
63              //分頁
64              $.lPaging(
65                  '#u',    //對應id
66                  {
67                      pageNumber:obj.pageNumber     //當前頁數
68                      ,totalPage:obj.totalPage    //總頁數
69                      ,countSize:5    //分頁顯示個數    (可省略)
70                      ,count:obj.count
71                      ,inputSearch:true//顯示查詢輸入框
72                      ,onPageChange: function (num) {
73                         initPage(num,pageSize,dataUrl);
74                     }
75                  }
76                 );
77       }
78       
79       //修改方法
80       function updF(id){
81           alert("修改:"+id);
82       }
83       
84       //刪除方法
85       function delF(id){
86           alert("刪除:"+id);
87       }
88       
89 </script>
90 </html>
View Code

 

 

demo下載

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM