AngularJS的Filter的示例详解


Posted in Javascript onMarch 07, 2017

贴上几个有关Filter使用的几个示例。

1. 首先创建一个表格

<body ng-app="app"> 
 <div class="divAll" ng-controller="tableFilter"> 
 <input type="text" placeholder="输入你要搜索的内容" ng-model="key"> 
 <br><br> 
 <table cellspacing="0"> 
 <thead> 
  <tr> 
  <th>名称</th> 
  <th>价格</th> 
  <th>上架时间</th> 
  <th>描述</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr> 
  <td>{{g.name}}</td> 
  <td>{{g.price}}</td> 
  <td>{{g.inTime}}</td> 
  <td>{{g.desc}}</td> 
  </tr> 
 </tbody> 
 </table> 
</div> 
<script src="js/angular.min.js"></script> 
<script> 
 var app = angular.module('app',[]); 
 app.controller('tableFilter',function($scope){ 
 $scope.goods = [ 
  {name:"HTML5",price:20,inTime:1488785356895,desc:"HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定。"}, //时间秒数由 new Date().getTime();获得 
  {name:"JavaScript",price:30,inTime:1488685355895,desc:"JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。"}, 
  {name:"CSS3",price:25,inTime:1468785355895,desc:"CSS即层叠样式表。"}, 
  {name:"AngularJS",price:50,inTime:1482785355895,desc:"AngularJS 是一款优秀的前端JS框架,被用于Google的多款产品当中。。"} 
 ]; 
} 
</script>

加上样式,显示如图

AngularJS的Filter的示例详解

2. 看到价格个时间显示怪怪的,好,修改一下表格。

<td>{{g.name}}</td> 
<td>{{g.price | currency}}</td> <!--currency:货币--> 
<td>{{g.inTime | date:'yyyy-MM-dd'}}</td> <!--将秒数改成日期格式 年-月-日--> 
<td>{{g.desc}}</td>

重新运行

AngularJS的Filter的示例详解

3. 这样一下,确实不碍眼了。但是描述太长了吧,能不能超过一定字数,就不显示了,以...结尾?

好,在表格里加上过滤器,就叫descFilter。字数显示。注意别忘了 ' | ' 过滤器符号。

<td>{{g.desc | descFilter : 10}}</td>

然后在js中为descFilter写上方法

//定义一个过滤器,过滤desc里面的字数,多余十个字的部分省略显示 
app.filter('descFilter',function(){ 
 return function(content,num){ //传两个参数,一个对应内容,一个对应长度 
 if(content.length > num){ 
  content = content.substring(0,num) + "..."; 
 } 
 return content; 
 } 
});

运行看看

AngularJS的Filter的示例详解

可以了。厉害。

4. 搜索框没用吗。别忘了,我们给它附上了ng-model="key",

好,修改一下tr。加上filter条件

<tr ng-repeat="g in goods | filter : key">

.保存运行,在里面搜索内容试试呢

AngularJS的Filter的示例详解

。好神奇,好厉害的Filter.

5.不能按价格排序吗?当然可以。而且不仅升序还能降序。

给价格那个标题加上升降按钮

<th>价格 <input type="button" ng-show="isAsc" value="?" ng-click="sort()"> <input type="button" ng-show="!isAsc" value="▲" ng-click="sort()"></th>

。修改一下js 

<pre name="code" class="javascript"> $scope.isAsc = false; //定义isAsc变量为false,默认升序; 
 $scope.sort = function(){ 
  $scope.isAsc = !$scope.isAsc; //升降切换 
 }</pre><br> 
<p></p> 
<pre></pre>

4 。更新一下过滤排序条件<br> 

<pre name="code" class="html"><tr ng-repeat="g in goods | filter : key | orderBy : 'price' : isAsc"></pre><br> 
<p></p> 
<p>再次运行。升序降序都可以。大功告成!</p> 
<p><img src="http://img.blog.csdn.net/20170306190351615" alt=""><br> 
</p> 
<p><img src="http://img.blog.csdn.net/20170306190425762" alt=""><br> 
</p>

AngularJS的Filter的示例详解

AngularJS的Filter的示例详解

以上所述是小编给大家介绍的AngularJS的Filter的示例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript null和undefined区别分析
Oct 14 Javascript
Bootstrap每天必学之轮播(Carousel)插件
Apr 25 Javascript
JavaScript中localStorage对象存储方式实例分析
Jan 12 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
Feb 19 Javascript
如何理解jQuery中的ajaxSubmit方法
Mar 13 Javascript
Vue项目webpack打包部署到服务器的实例详解
Jul 17 Javascript
前端常见跨域解决方案(全)
Sep 19 Javascript
微信小程序实现添加手机联系人功能示例
Nov 30 Javascript
使用Angular CLI生成 Angular 5项目教程详解
Mar 18 Javascript
JS实现的缓冲运动效果示例
Apr 30 Javascript
vue项目打包后怎样优雅的解决跨域
May 26 Javascript
编写一个javascript元循环求值器的方法
Apr 14 Javascript
js上下视差滚动简单实现代码
Mar 07 #Javascript
js实现下一页页码效果
Mar 07 #Javascript
原生JS中slice()方法和splice()区别
Mar 06 #Javascript
浅析vue component 组件使用
Mar 06 #Javascript
js常用的继承--组合式继承
Mar 06 #Javascript
VUE开发一个图片轮播的组件示例代码
Mar 06 #Javascript
canvas仿iwatch时钟效果
Mar 06 #Javascript
You might like
PHP聊天室技术
2006/10/09 PHP
PHP中nowdoc和heredoc使用需要注意的一点
2014/03/21 PHP
PHP简单生成缩略图相册的方法
2015/07/29 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
jquery操作HTML5 的data-*的用法实例分享
2014/08/17 Javascript
JavaScript实现左右下拉框动态增删示例
2017/03/09 Javascript
nodejs读写json文件的简单方法(必看)
2017/03/09 NodeJs
vue弹窗组件的实现示例代码
2018/09/10 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
Vue+Node实现商品列表的分页、排序、筛选,添加购物车功能详解
2019/12/07 Javascript
Angular封装表单控件及思想总结
2019/12/11 Javascript
vue中利用iscroll.js解决pc端滚动问题
2020/02/15 Javascript
vue element-ul实现展开和收起功能的实例代码
2020/11/25 Vue.js
原生js拖拽功能制作滑动条实例代码
2021/02/05 Javascript
深入理解python中的atexit模块
2017/03/07 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
python根据unicode判断语言类型实例代码
2018/01/17 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
2018/04/18 Python
深入浅析Python 中 is 语法带来的误解
2019/05/07 Python
python 导入数据及作图的实现
2019/12/03 Python
Windows 平台做 Python 开发的最佳组合(推荐)
2020/07/27 Python
Scrapy+Selenium自动获取cookie爬取网易云音乐个人喜爱歌单
2021/02/01 Python
详解CSS3中nth-child与nth-of-type的区别
2017/01/05 HTML / CSS
详解HTML5 Canvas标签及基本使用
2020/01/10 HTML / CSS
泰国演唱会订票网站:StubHub泰国
2018/02/26 全球购物
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
Ashford台湾:以折扣价提供奢华的男女用表款
2019/12/04 全球购物
网站设计师的岗位职责
2013/11/21 职场文书
小学中秋节活动方案
2014/02/06 职场文书
个人担保书范文
2014/05/20 职场文书
理发店策划方案
2014/06/05 职场文书
中层领导干部群众路线对照检查材料思想汇报
2014/10/02 职场文书
2015年小学教师培训工作总结
2015/07/21 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
Python可视化神器pyecharts绘制地理图表
2022/07/07 Python