<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>angularjs过滤器排序</title>
<link rel="stylesheet" href="bootstrap/bootstrap.min.css" />
<script src="jquery-2.1.3.min.js"></script>
<script src="bootstrap/bootstrap.min.js"></script>
<script src="angular.js"></script>
<script>
var app = angular.module('Demo', []);
app.controller("demoCtrl", ["$scope", "$rootScope", "$http", "$interval", "$filter", function ($scope, $rootScope, $http, $interval, $filter) {
$scope.items = [
{ id: "1", name : "小白牛", email : "weicoa8@126.com" },
{ id: "2", name : "迷迭香", email : "midiexiang8@126.com" },
{ id: "3", name : "龙之谷", email : "dragon8@126.com" },
];
$scope.orderBy = function (item) {
alert(arguments.callee[item]);
if(arguments.callee[item] == 'undefined'){
arguments.callee[item] = false;
}
arguments.callee[item] = !arguments.callee[item];
$scope.items = $filter('orderBy')($scope.items, item,arguments.callee[item] );
};
$scope.lists = $scope.items;
$scope.$watch('key',function (n, w) {
$scope.lists = $filter('filter')($scope.items, n);
});
}]);
</script>
</head>
<body ng-app="Demo">
<div ng-controller="demoCtrl">
关键字:<input ng-model="key">
<table class="table table-bordered">
<tr>
<td ng-click="orderBy('id')" style="cursor: pointer">序号</td>
<td ng-click="orderBy('name')" style="cursor: pointer">名字</td>
<td ng-click="orderBy('email')" style="cursor: pointer">邮箱</td>
</tr>
<tr ng-repeat="item in lists">
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.email}}</td>
</tr>
</table>
</div>
</body>
</html>