angular与datatables 的结合(二)
来源:互联网 发布:linux 进程 流量 编辑:程序博客网 时间:2024/06/06 00:39
angular与datatable
html 部分
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="bower_components/datatables/media/css/jquery.dataTables.min.css"></head><body ng-app ="myModule"><div ng-controller="AngularWayChangeDataCtrl as showCase"> <form class="form-inline" ng-submit="showCase.addPerson()"> <table datatable="ng" dt-options="showCase.dtOptions" dt-column-defs="showCase.dtColumnDefs" class="row-border hover"> <thead> <tr> <th> <div class="form-group"> <label> <input class="form-control" type="number" name="id" ng-model="showCase.person2Add.id" value=""> </label> </div> </th> <th> <div class="form-group"> <label> <input type="text" class="form-control" name="firstName" ng-model="showCase.person2Add.firstName" value=""> </label> </div> </th> <th> <div class="form-group"> <label> <input type="text" class="form-control" name="lastName" ng-model="showCase.person2Add.lastName" value=""> </label> </div> </th> <th> <div class="form-group"> <button type="submit" class="btn btn-success">新增</button> </div> </th> </tr> <tr> <th>ID</th> <th>FirstName</th> <th>LastName</th> <th></th> </tr> </thead> <tbody> <tr ng-repeat="person in showCase.persons"> <td>{{ person.id }}</td> <td>{{ person.firstName }}</td> <td>{{ person.lastName }}</td> <td> <button type="button" ng-click="showCase.modifyPerson($index)" class="btn btn-warning">修改</button> <button type="button" ng-click="showCase.removePerson($index)" class="btn btn-danger">删除</button> </td> </tr> </tbody> </table> </form></div><script src="bower_components/jquery/dist/jquery.min.js"></script><script src="bower_components/datatables/media/js/jquery.dataTables.js"></script><script src="bower_components/angular/angular.min.js"></script><script src="bower_components/angular-datatables/dist/angular-datatables.min.js"></script><script src="./app.js"></script></body></html>
angualrjs 部分
var data1 = [{ "id": 860, "firstName": "Superman", "lastName": "Yoda"}, { "id": 870, "firstName": "Foo", "lastName": "Whateveryournameis"}, { "id": 590, "firstName": "Toto", "lastName": "Titi"}, { "id": 803, "firstName": "Luke", "lastName": "Kyle"}];angular.module('myModule', ['datatables']) .controller('AngularWayChangeDataCtrl', function ( DTOptionsBuilder, DTColumnDefBuilder){ var vm = this; vm.persons = data1; vm.dtOptions = DTOptionsBuilder.newOptions().withPaginationType('full_numbers'); vm.dtColumnDefs = [ DTColumnDefBuilder.newColumnDef(0), DTColumnDefBuilder.newColumnDef(1), DTColumnDefBuilder.newColumnDef(2), DTColumnDefBuilder.newColumnDef(3).notSortable() ]; vm.person2Add = _buildPerson2Add(1); vm.addPerson = addPerson; vm.modifyPerson = modifyPerson; vm.removePerson = removePerson; function _buildPerson2Add(id) { return { id: id, firstName: 'Foo' + id, lastName: 'Bar' + id }; } function addPerson() { vm.persons.push(angular.copy(vm.person2Add)); vm.person2Add = _buildPerson2Add(vm.person2Add.id + 1); } function modifyPerson(index) { vm.persons.splice(index, 1, angular.copy(vm.person2Add)); vm.person2Add = _buildPerson2Add(vm.person2Add.id + 1); } function removePerson(index) { vm.persons.splice(index, 1); } });
显示效果
总结
这种方法充分应该是完美的,充分利用了angular的模版系统,而且轻度依赖datatable,用来建立应用型web最佳之选。附:参考:[angular-datatables参考资料](http://l-lin.github.io/angular-datatables/)
0 0
- angular与datatables 的结合(二)
- [dataTables使用的坑]dataTables和angular的结合
- 《Angular与primeNG结合》
- JSTL与Struts的结合(二)
- JSTL与Struts的结合(二)
- JSTL与Struts的结合(二)
- JSTL与Struts的结合(二)
- Angular指令与Jquery结合
- 《Angular与ng-zorro结合》
- Together与Visual.Studio.NET的结合使用(二)
- spring与hibernate3结合,DataSource的配置方式(二)
- Together与Visual.Studio.NET的结合使用(二)
- Together与Visual.Studio.NET的结合使用(二)
- VB与动态网页的结合(二)
- Java Swing与线程的结合应用(二)
- laravel结合datatables使用。
- JSP与XML的结合(二)
- DataTables(二) —— 行分组信息展开与折叠的功能实现
- 10大知名opengl教程
- 详解java序列化(二)
- TCP拥塞控制算法 优缺点 适用环境 性能分析
- 数据库为何要建立索引的原因说明
- 阿里面试 事件委托
- angular与datatables 的结合(二)
- linux环境下java swing中文乱码
- 忆苦思甜之飘香猪尾
- BasicDataSource连接池
- Oracle分析函数入门
- 【Financail Markets】3. Spot Rate Curve及衍生出的Par Yield Curve和Instantaneous Forward Curve 【基于ECB数据】
- WebView设置适应屏幕和缩放
- db2 "list applications"
- MySQL数据库服务器双机热备的实现方法两则