本文实例讲述了AngularJS实现的自定义过滤器。分享给大家供大家参考,具体如下:
1.自定义限制字数的过滤器
啥也不说了直接上代码吧
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
angular.module( 'demo' ).filter( 'cut' , function ($sce) {
return function (value, wordwise, max, tail) {
if (!value) return '' ;
max = parseInt(max, 10); if (!max) return value;
if (value.length <= max) return value;
if (value.length > max){
value = value.substr(0, max);
} if (wordwise) {
var lastspace = value.lastIndexOf( ' ' );
if (lastspace != -1) {
value = value.substr(0, lastspace);
}
} return $sce.trustAsHtml(value + (tail || ' … <span>显示全文</span>' ));
}; }); |
代码直接拷走绝对没问题!!项目亲测!
2.自定义其他jQuery过滤器
还是直接上代码
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
angular.module( 'demo' ).filter( 'stateFormat' , [ 'state' , function (state) {
return function (input, type){
if (type == 'stateColor' ){
switch (input){
case '1' : return 'green' ; break ;
case '0' : return 'red' ; break ;
}
} else if (type == 'stateText' ){
switch (input){
case '1' : return '特价' ; break ;
case '0' : return '未特价' ; break ;
}
} else if (type == 'marry' ){
switch (input){
case '1' : return '黄焖鸡米饭' ; break ;
case '2' : return '水煮肉片' ; break ;
case '3' : return '酸菜鱼' ; break ;
}
} else (type == 'propertyColor' ){
switch (input){
case '1' : return 'blue' ; break ;
case '-1' : return 'red' ; break ;
case '0' : return '' ; break ;
}
}
|