zoukankan      html  css  js  c++  java
  • Angularjs 表格插件的使用

    对于相关的table组件可以使用:UI Grid (ng-grid),ng-table,smart table,Angular-Datatables,tablelite,kendo-ui中的grid。相关的介绍可以参考http://zhenghaoju700.blog.163.com/blog/static/135859518201521343938228/

    对于一般的项目来说 简单的显示表格用bootstrap的相关插件或者自己写也行,对于分页,我尝试了用smart-tablel这个组件来写的,效果感觉还是不错的。其他的组件本人还没有亲自试验过。嘿嘿...

    效果截图:

    下面是实现的主要方式:

    1.安装

    1 bower install angular-smart-table

    2.加入module

    1 angular.module('myApp',['smart-table']

    3.HTML

     1 <table st-table="rowCollection" class="table table-striped">
     2         <thead>
     3         <tr>
     4             <th st-sort="firstName">first name</th>
     5             <th st-sort="lastName">last name</th>
     6             <th st-sort="birthDate">birth date</th>
     7             <th st-sort="balance">balance</th>
     8             <th>email</th>
     9         </tr>
    10         <tr>
    11             <th>
    12                 <input st-search="'firstName'" placeholder="search for firstname" class="input-sm form-control" type="search"/>
    13             </th>
    14             <th colspan="4">
    15                 <input st-search placeholder="global search" class="input-sm form-control" type="search"/>
    16             </th>
    17         </tr>
    18         </thead>
    19         <tbody>
    20         <tr ng-repeat="row in rowCollection">
    21             <td>{{row.firstName | uppercase}}</td>
    22             <td>{{row.lastName}}</td>
    23             <td>{{row.birthDate | date}}</td>
    24             <td>{{row.balance | currency}}</td>
    25             <td><a ng-href="mailto:{{row.email}}">email</a></td>
    26         </tr>
    27         </tbody>
    28         <tfoot>
    29             <tr>
    30                 <td colspan="5" class="text-center">
    31                     <div st-pagination="" st-items-by-page="itemsByPage" st-displayed-pages="7"></div>
    32                 </td>
    33             </tr>
    34         </tfoot>
    35     </table>

    4.JavaScript

     1 app.controller('paginationCtrl', ['$scope', function (scope) {
     2     var
     3         nameList = ['Pierre', 'Pol', 'Jacques', 'Robert', 'Elisa'],
     4         familyName = ['Dupont', 'Germain', 'Delcourt', 'bjip', 'Menez'];
     5 
     6     function createRandomItem() {
     7         var
     8             firstName = nameList[Math.floor(Math.random() * 4)],
     9             lastName = familyName[Math.floor(Math.random() * 4)],
    10             age = Math.floor(Math.random() * 100),
    11             email = firstName + lastName + '@whatever.com',
    12             balance = Math.random() * 3000;
    13 
    14         return{
    15             firstName: firstName,
    16             lastName: lastName,
    17             age: age,
    18             email: email,
    19             balance: balance
    20         };
    21     }
    22 
    23         scope.itemsByPage=15;
    24 
    25     scope.rowCollection = [];
    26     for (var j = 0; j < 200; j++) {
    27         scope.rowCollection.push(createRandomItem());
    28     }
    29 }]);

    感觉其实也很简单,我也只是初学,给自己留个备忘吧,还有其他的组件,慢慢学着使用。

  • 相关阅读:
    windows 安装 composer
    css 3 波浪特效
    phpstudy composer 安装YII2
    weUI weui-navbar 实现
    YII 多表联查 纵表
    YII2 models非常好用的控制输出数据【重写Fields】
    重写Fields 控制models 数据输出字段
    Plugin with id com.android.application not found
    react native
    java.lang.IllegalArgumentException: Missing either @POST URL or @Url parameter.
  • 原文地址:https://www.cnblogs.com/tiedaweishao/p/4813118.html
Copyright © 2011-2022 走看看