今天大家来试一试用angular做一下简单的搜索功能吧;

首先我们需要写html的部分,我们需要设置几个条件,比如按什么来排序,按升序还是降序搜索,和一个文本框来设置模糊搜索;

<nav>

  <select ng-model="a">

    <option value="num">按编号排序</option>

    <option value="name">按姓名排序</option>

    <option value="age">按年龄排序</option>

  </select>

  <select ng-model="b">

    <option value="">升序</option>

    <option value="">降序</option>

  </select>

  <input type="text" ng-model="s"/>

</nav>

设置上ng-model好在接下来用angular来获取动态的值,方便我们搜索,接下来我们先写js的部分吧;

首先我们需要先引入一个angular,在js中创建angular的模块部分和控制台。之后我们创建一个json文件来保存一下我们需要查询的数据,之后我们在控制台中获取一下这个json文件中的数据内容,方便我们导入到html中来搜索。

{

  "xinxi":[

    {"num":100,"name":"baobo","age":12},

    {"num":99,"name":"paopo","age":18},

    {"num":50,"name":"xinxin","age":55},

    {"num":55,"name":"angular","age":20},

    {"num":75,"name":"chali","age":15},

    {"num":85,"name":"each","age":60},

    {"num":98,"name":"hello","age":19},  

    {"num":68,"name":"zizizi","age":28},

    {"num":66,"name":"gegege","age":56},

    {"num":77,"name":"fufuf","age":43},

    {"num":42,"name":"baobo","age":12},

    {"num":54,"name":"menmen","age":32},

    {"num":88,"name":"qqqq","age":71},

    {"num":69,"name":"laowang","age":22},

    {"num":53,"name":"wangwang","age":99},

    {"num":1,"name":"dadad","age":88}

  ]

}

这是我所创建的json文件。

var app=angular.module("mk",[]);

app.controller("text",function($scope,$http){

  $http.get("paixu.json").success(function(data){

    $scope.data=data.xinxi

    $scope.a="num"

  })

});

这是我所创建用来获取json文件的代码;

注意$scope.a = “num”;是为了和上面获取的动态数据相对应的,并且是让数据先按什么先排序。

之后我们只需要把这些数据填到html部分就可以了。

<table border="0px" id="table">

  <tr>

    <th>编号</th>

    <th>姓名</th>

    <th>年龄</th>

  </tr>

  <tr ng-repeat="value in data | orderBy:b+a | filter:s">

    <td>{{value.num}}</td>

    <td>{{value.name}}</td>

    <td>{{value.age}}</td>

  </tr>

</table>

ng-repeat="value in data | orderBy:b+a | filter:s;这是充分运用了angular中的过滤器属性,orderBy是排序问题,注意一定要先把升序和降序的动态数据放到前面防止出错,filter这个过滤器就是把我们所搜索的数据和我们的json数据库中作比较,json中哪一下标的数组中有我们搜索的数据就显示出来,没有则隐藏。

用angular做的模糊搜索的更多相关文章

  1. angular做的简单购物车

    虽然本人也是刚刚才开始学习angular.js,并不是非常会,但是这并不能阻止我对angular的喜爱.因为它太省代码了,比如说一个比较简单的购物车,就是只有商品名称,单价,数量,小计,总计和删除功能 ...

  2. 用angular怎么缓存父页面数据

    angular做单页面应用是一个比较好的框架,但是它有一定的入门难度,对于新手来说可能会碰到很多坑,也有许多难题,大部分仔细看文档,找社区是能解决的. 但有些问题也许资料比较少,最近遇到过一个要缓存父 ...

  3. Nodejs之MEAN栈开发(五)---- Angular入门与页面改造

    这个系列一共会涉及两个JavaScript框架的讲解,一个是Express用做后端,一个是Angular用于前端.和Express一样,Angular分离内容,处理视图.数据和逻辑.和MVC模式很相似 ...

  4. Deferred在jQuery和Angular中的使用与简单实现

    Deferred在jQuery和Angular中的使用与简单实现 Deferred是在jQuery1.5版本中加入的,并且jQuery使用它完全重写了AJax,以前也只是偶尔使用.但是上次在使用Ang ...

  5. [转贴]有关Angular 2.0的一切

    对Angular 2.0的策略有疑问吗?就在这里提吧.在接下来的这篇文章里,我会解释Angular 2.0的主要特性区域,以及每个变化背后的动机.每个部分之后,我将提供自己在设计过程中的意见和见解,包 ...

  6. angular实现了一个简单demo,angular-weibo-favorites

    前面必须说一段 帮客户做了一个过渡期的项目,唯一的要求就是速度,我只是会点儿基础的php,于是就用tp帮客户做了这个项目.最近和客户架构沟通,后期想把项目重新做一下,就用现在最流行的技术,暂时想的使用 ...

  7. 使用angular.js开发的一个简易todo demo

    前沿 在CVTE实习考察的一周里,接触到了angular,并在最后的一天任务里要求使用angular做一个功能主要包括创建.编辑.恢复.删除以及留言的todo demo,并支持响应式布局.因为之前没怎 ...

  8. (译) Angular运行原理揭秘 Part 1

    当你用AngularJS写的应用越多, 你会越发的觉得它相当神奇. 之前我用AngularJS实现了相当多酷炫的效果, 所以我决定去看看它的源码, 我想这样也许我能知道它的原理. 下面是我从源码中找到 ...

  9. 【转】Angular运行原理揭秘 Part 1

    当你用AngularJS写的应用越多, 你会越发的觉得它相当神奇. 之前我用AngularJS实现了相当多酷炫的效果, 所以我决定去看看它的源码, 我想这样也许我能知道它的原理. 下面是我从源码中找到 ...

随机推荐

  1. unity3d常用控件

    直接上代码,就能看懂了. private string txt1; private string pwd1; private int tool1; private bool isMuted; priv ...

  2. 百度地图和高德地图坐标系的互相转换 四种Sandcastle方法生成c#.net帮助类帮助文档 文档API生成神器SandCastle使用心得 ASP.NET Core

    百度地图和高德地图坐标系的互相转换   GPS.谷歌.百度.高德坐标相互转换 一.在进行地图开发过程中,我们一般能接触到以下三种类型的地图坐标系: 1.WGS-84原始坐标系,一般用国际GPS纪录仪记 ...

  3. Build System 和Test Framework overview总结

    良好的自动化系统可以帮助Dev/Tester快速发现product/test code issue. 正好上一个项目结束,上个项目在自动化系统上面做得非常好.从产品开始时半年release一次到后面每 ...

  4. Tensorflow - Tutorial (7) : 利用 RNN/LSTM 进行手写数字识别

    1. 经常使用类 class tf.contrib.rnn.BasicLSTMCell BasicLSTMCell 是最简单的一个LSTM类.没有实现clipping,projection layer ...

  5. linux Apache CGI 安装配置

    Apache 中的提交了一种利用扩展应用程序执行动态网页的机制. 称为Common Gateway Interface (通用网关接口)简称CGI. 本文假定已安装好linux(本文的linux版本为 ...

  6. 关于scut在unity上的主动推送

    自带的samples里面,chat的例子涉及主动推送,可作为参考. 在unity里面接收主动推送用Net.CommonCallback 服务端最近的新版本更改了接口,有两种方法推送: ActionFa ...

  7. Atitit.导出excel功能的设计 与解决方案

    Atitit.导出excel功能的设计 与解决方案 1.1. 项目起源于背景1 1.2. Js  jquery方案(推荐)jquery.table2excel1 1.3. 服务器方案2 1.4. 详细 ...

  8. [docker]bind9.11-with-mysql5.6 docker容器化实战

    参考: https://www.centos.bz/2012/09/bind-with-mysql-support/ http://blog.51niux.com/?id=125 http://470 ...

  9. PHP系统学习3 正则

    正则 ^shop 标示匹配与shop开头的字符串 shop$用来匹配与shop结尾的字符串 ^shop$只匹配shop [a-z]匹配所有小写字母 [A-Z]匹配所有大写字母 [a-zA-Z]匹配所有 ...

  10. 第一个EJB示例

    FirstEJB2.0.zip Eclipse + JBoss 5.1 Ejb3Example.zip Eclipse + JBoss 7.1 注意点: 1. jboss 增加用户: D:\DevPr ...