本文实例为大家分享了angularjs实现分页和搜索展示的具体代码,供大家参考,具体内容如下
话不多说,上代码
<html class="no-js" ng-app="myapp">
<body ng-controller="maincontroller">
<table class="am-table am-table-striped am-table-hover table-main">
<thead>
<tr>
<th>name</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in houses | limitto:listsperpage">
<td>{{item.c}}</td>
</tr>
</tbody>
</table>
<div class="am-cf">
共 {{datanum}} 条记录/当前第 {{currentpage+1}} 页 共 {{pages}} 页
<div class="am-fr">
<ul class="am-pagination">
<li><a rel="external nofollow" rel="external nofollow" ng-click="prevpage()">«</a></li>
<li><a rel="external nofollow" rel="external nofollow" ng-click="nextpage()">»</a></li>
</ul>
</div>
</div>
<script src="plugins/angularjs/angular.min.js" type="text/javascript"></script>
</body>
</html>
javascript
<script>
var app = angular.module("myapp", []);
app.controller("maincontroller", function ($scope, $http) {
//测试数据
var $data = {"fs":[{"c":"张一"},{"c":"张二"},{"c":"张三"},{"c":"张四"},{"c":"李一"},{"c":"李二"},{"c":"李三"},{"c":"李四"},{"c":"王一"},{"c":"王二"},{"c":"王三"},{"c":"王四"}]};
$scope.currentpage = 0;//设置当前页是 0
$scope.listsperpage = 3;//设置每页显示3个
//上一页
$scope.prevpage = function(){
if($scope.currentpage > 0){
$scope.currentpage--;
}
}
//下一页
$scope.nextpage = function(){
if ($scope.currentpage < $scope.pages-1){
$scope.currentpage++;
}
}
//监听搜索条件
$scope.$watch('search.c', function(){
$scope.currentpage = 0;
searchresult();
});
//监听翻页
$scope.$watch('currentpage', function(){
searchresult();
});
//搜索或翻页结果
function searchresult(){
var out = [];
if($scope.search){
angular.foreach($data.fs,function(k,v){
if(k.c.indexof($scope.search.c)>-1){
out.push(k);
}
});
}
else{
out = $data.fs;
}
$scope.houses = out.slice($scope.currentpage*$scope.listsperpage);
$scope.datanum = out.length;
$scope.pages = math.ceil($scope.datanum/$scope.listsperpage);
}
});
</script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
切丶GG