本篇文章由:http://xinpure.com/angularjs-simple-paging-functionality/

初学 AngularJS, 尝试着写一些小功能

代码逻辑写得略粗糙,仅仅只是实现了简单的分页功能,使用 AngularJS 尝尝鲜。

AngularJS Code (Users.js)

var Users = angular.module('Users', []);

Users.controller('UserList', function($scope, $http) {

    $scope.start        = 0;
$scope.showLimit = 10;
$scope.count = 0; /* Default Users List */
$http.get('welcome/get_users' + '/' + $scope.start + '/' + $scope.showLimit).success(function(data){
$scope.users = data;
}); /* Count Users */
$http.get('welcome/count_users').success(function(data){
$scope.count = data;
}); /* Pagination */
$scope.page = function (start) { $scope.start = start < 0 ? 0 : start;
if (start >= $scope.count) $scope.start = $scope.count - $scope.showLimit; $http.get('welcome/get_users' + '/' + $scope.start + '/' + $scope.showLimit).success(function(data){
$scope.users = data;
});
} });

HTML Code

<head>
<script src="angular.js"></script>
<script src="Users.js"></script>
</head>
<body ng-controller="UserList">
<div id="container">
<div id="user_list">
Search: <input class="query" type="text" ng-model="query" placeholder="Query">
<hr />
<table>
<thead>
<th>ID</th>
<th>User Name</th>
<th>Phone Number</th>
<th>Email</th>
</thead>
<tbody>
<tr ng-repeat="user in users | filter:query">
<td>{{user.id}}</td>
<td>{{user.user_name}}</td>
<td>{{user.phone_number}}</td>
<td>{{user.email}}</td>
</tr>
</tbody>
</table>
<hr />
<button ng-click="page(0)">First</button>
<button ng-click="page(start - showLimit)">Prev</button>
<button ng-click="page(start + showLimit)">Next</button>
<button ng-click="page(count - showLimit)">Last</button>
<input type="text" ng-model="gotoPage" />
<button ng-click="page(gotoPage * showLimit)">GO</button>
</div>
</div>
</body>

CSS Code (稍微美化了一下)

body {
background-color: #fff;
margin: 40px;
font: 13px/20px normal Helvetica, Arial, sans-serif;
color: #4F5155;
}
#user_list {
margin: 15px;
}
#container {
margin: 10px;
border: 1px solid #D0D0D0;
box-shadow: 0 0 8px #D0D0D0;
}
input {
width: 40px;
height: 19px;
padding: 3px;
color: #555;
border-radius: 3px;
border: 1px solid #ccc;
}
input.query {
width: 100px;
}
button {
padding: 5px;
background-color: #fff;
border: 1px solid #ccc;
border-radius: 3px;
}
table {
border-spacing: 0;
border-collapse: collapse;
}
td,th {
border: 1px solid #ccc;
text-align: center;
padding: 5px;
}

主要逻辑代码都是写死的,不灵活,慢慢改进吧。

最新文章

  1. JavaScript笔记基础篇(二)
  2. 【python】浅谈enumerate 函数
  3. jquery ajax post 传递数组 ,多checkbox 取值
  4. linux下文件编码的查看与修改
  5. qt widget设置Qt::FramelessWindowHint和Qt::WA_TranslucentBackground, 会出现一个bug: 在最小化后还原时界面停止刷新
  6. nginx1.8+php5.6.10 服务器编译安装备忘2015-06
  7. OD: GS Bypasing via SEH / .data
  8. Scala中的apply实战详解
  9. html5的结构
  10. Django2.0中文文档
  11. Linux shell 及命令汇总
  12. Python 输出有颜色的字体
  13. Xshell简单介绍
  14. POJ 2135 Farm Tour (网络流,最小费用最大流)
  15. 用 .NET Memory Profiler 跟踪.net 应用内存使用情况--基本应用篇(转)
  16. 【php正则】php正则匹配UTF-8格式的中文汉字 和 【,】【,】【。】等符号
  17. ARM中的汇编指令
  18. svn使用---在CentOS 7上搭建SVN服务器 及windows搭建svn步骤
  19. 20155322 2016-2017-2 《Java程序设计》第6周学习总结
  20. Django基于Form之登录和注册

热门文章

  1. 【LCA】BZOJ1832 &amp; BZOJ1787(AHOI)-集会
  2. python基础--接口与归一化设计、封装、异常、网络编程
  3. MYSQL复习笔记3-用户和安全
  4. Unity3D 避免玩家作弊
  5. iOS: 常用的宏
  6. C++ 输出代码所在的文件、行数以及函数名称
  7. What is required for a successful backup of all files during hoi backup?
  8. jquery中获取相邻元素相关的命令:next()、prev()和siblings()
  9. nginx搭建前端项目web服务器以及利用反向代理调试远程后台接口
  10. C# 调用 Web Service 时出现 : 407 Proxy Authentication Required错误的解决办法