filter 以及 orderBy的使用

摘要:
reverse“index.html<htmlng-app=“myApp”>linkrel=“stylesheet”href=“../css/uikit.css“/>tableclass=“uk tableuk table hoveruk table striped”>formclass=“uk form”>

filter用于关键字过滤操作,orderBy用于排序操作,运行界面如下:

filter 以及 orderBy的使用第1张

点击标题Name与Email实现排序功能,输入框中输入关键字进行过滤,同时实现根据关键字进行过滤后进行排序操作:

ng-repeat="user in users | filter:keyword | orderBy:sortField:reverse"

index.html

<!DOCTYPE html>

<html ng-app="myApp">
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" href="../css/uikit.css"/>
        <link rel="stylesheet" href="../css/my-uikit.css"/>
    </head>
    <body>
        
        <div class="uk-panel" ng-controller="UserCtrl">
            
            <table class="uk-table uk-table-hover uk-table-striped">
                <thead>
                    <tr>
                        <th colspan="2">
                            <form class="uk-form">
                                <input type="text"  ng-model="keyword" placeholder="Input keword..."/>
                            </form>
                        </th>
                    </tr>
                    <tr class="uk-bg-primary">
                        <th ng-click="sort('name')">Name</th>
                        <th ng-click="sort('email')">Email</th>
                    </tr>
                </thead>
                <tbody ng-repeat="user in users | filter:keyword | orderBy:sortField:reverse" ng-click="selectUser(user)" 
                       ng-switch on="isSelected(user)"
                       class="uk-text-success">
                    <tr>
                        <td>{{user.name}}</td>
                        <td>{{user.email}}</td>
                    </tr>
                    <tr ng-switch-when="true">
                        <td colspan="2" class="uk-bg-success">{{user.desc}}</td>
                    </tr>
                </tbody>
            </table>
        </div>
        
    </body>
    
    <script src="../js/angular.js"></script>
    <script src="index.js"></script>
</html>

index.js

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

myApp.controller('UserCtrl', ['$scope', function($scope){
        $scope.users = [
            {
                name:'张三',
                email:'zhangsan@gmail.com',
                desc: '张三的详细信息...'
            },
            {
                name:'李四',
                email:'lisi@123.com',
                desc: '李四的详细信息...'
            },
            {
                name:'王五',
                email:'wangwu@qq.com',
                desc: '王五的详细信息...'
            }
        ];
        
        $scope.selectUser = function(user){
            $scope.selectedUser = user;
        };
        
        $scope.isSelected = function(user){
            return $scope.selectedUser === user;
        };
        
        $scope.sortField = undefined;
        $scope.reverse = false;
        
        $scope.sort = function(fieldName){
            if($scope.sortField===fieldName){
                $scope.reverse=!$scope.reverse;
            }else{
                $scope.sortField = fieldName;
                $scope.reverse = false;
            }
        };
}]);

免责声明:文章转载自《filter 以及 orderBy的使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇什么是CopyOnWriteArrayList,它与ArrayList有何不同?Python下opencv使用笔记(七)(图像梯度与边缘检測)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

IDEA 常用的基本设置 2019.3版本

一、字体设置 (1)非编辑框内的字体设置 Settings--->Appearance & Behavior--->Appearance--->选择Use custom font (2)编辑框的字体设置 Settings--->Editor--->Color Scheme--->Color Scheme Font...

php:// 访问各个输入/输出流

相关 php.ini 配置 allow_url_fopen :on 默认开启 该选项为on便是激活了 URL 形式的 fopen 封装协议使得可以访问 URL 对象文件等。 allow_url_include:off 默认关闭,该选项为on便是允许 包含URL 对象文件等 php://stdin, php://stdout 和 php://stderr...

LINQ根据时间排序问题(OrderBy、OrderByDescending)

直接上代码: db.GetList<Draw2D>(x => x.ProductId == id && x.EditionNo == no) .OrderBy(x => x.CreateTime.Desc()) .ToList(); 这个无法排序!!! return db.GetList<Dra...

博客园第一搏——Html5 JumpStart学习笔记1:Semantic Structure

一、一点感悟   注册博客园大概有半年了吧,还没有写过博客。之前先接触了CSDN,培训的时候经常在CSDN上写学习笔记。工作了小半年,比较忙,就把写博客的习惯可耻的匿了。今日重操旧业,并把家搬到了更专业的博客园,希望能坚持下去,和园友共同分享、学习、提高。   就在刚才,看了首页一篇文章——六年不惑:开发人员的“僵难Style”,很感谢园友对做人经验的分享...

SSH框架使用注解简化代码

注释的优势:     1.最简单直接的优势就是减少了配置文件的代码量。     2.注释和Java代码位于一个文件中,而XML 配置采用独立的配置文件。配置信息和 Java 代码放在一起,有助于增强程序的内聚性。而采用独立的XML 配置文件,程序员在编写一个功能时,往往需要在程序文件和配置文件中不停切换,这种思维上的不连贯会降低开发效率。  SSH 注解组...

MySQL数据库创建表报错的解决方案

实体类 package com.tao.pojo; public class Student {private String id; private String name; private String pass; public Student() { super(); } public...