AngularJS使用$watch与$filter过滤器制作数据筛选实例

AngularJS使用$watch与$filter过滤器制作数据筛选实例,代码如下:

在搜索框中输入不同文字,然后表格中展示相应的搜索结果:

01<!DOCTYPE html>
02<html lang="en">
03<head>
04    <meta charset="UTF-8">
05    <title>Title</title>
06    <style type="text/css">
07        .ng-cloak{display:none;}
08        td{height:30px;line-height:30px;padding:0px 10px;text-align:center;}
09    </style>
10</head>
11<body ng-app="app" ng-controller="ctrl" ng-cloak class="ng-cloak">
12    <input type="text" ng-model="search" ng-model-options="{'updateOn':'blur'}"/>
13    <table cellpadding="0" cellspacing="0" border="1">
14        <thead>
15            <tr>
16                <td>姓名</td>
17                <td ng-click="orderBy('age')">年龄</td>
18                <td>性别</td>
19                <td ng-click="orderBy('click')">点击</td>
20            </tr>
21        </thead>
22        <tbody>
23            <tr ng-repeat="v in tmp">
24                <td>{{v.user}}</td>
25                <td>{{v.age}}</td>
26                <td>{{v.sex}}</td>
27                <td>{{v.click}}</td>
28            </tr>
29        </tbody>
30    </table>
31</body>
32</html>
33<script type="text/javascript" src="../js/angular.min.js"></script>
34<script type="text/javascript">
35    var m = angular.module('app', []);
36    m.controller('ctrl', ['$scope''$filter'function($scope, $filter){
37        $scope.search = '';
38        $scope.data = [
39            {user:'张三', age:23, sex:'男', click:100},
40            {user:'李四', age:26, sex:'女', click:200},
41            {user:'王五', age:24, sex:'男', click:300},
42        ];
43        //临时数据
44        $scope.tmp = {};
45        $scope.$watch('search'function(n, o){
46            $scope.tmp = $filter('filter')($scope.data, n);
47        })
48    }]);
49</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值