AngularJS 過濾器



過濾器可以使用一個管道字元(|)加入到表達式和指令中。


AngularJS 過濾器

AngularJS 過濾器可用來轉換資料:

##過濾器#描述currency格式化數字為貨幣格式。 filter從陣列項目中選擇子集。 lowercase格式化字串為小寫。 orderBy根據某個表達式排列陣列。 uppercase格式化字串為大寫。

表達式中新增過濾器

過濾器可以透過一個管道字元(|)和一個過濾器添加到表達式中。 .

((下面的兩個實例,我們將使用前面章節中提到的person 控制器))

uppercase 過濾器將字串格式化為大寫:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="personCtrl">

<p>姓名为 {{ lastName | uppercase }}</p>

</div>

<script src="personController.js"></script>

</body>
</html>

#執行實例»

點擊"運行實例"按鈕查看線上實例

lowercase 過濾器將字串格式化為小寫:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="personCtrl">

<p>姓名为 {{ lastName | lowercase }}</p>

</div>

<script src="personController.js"></script>

</body>
</html>

運行實例»

點擊"運行實例" 按鈕查看線上實例


#currency 過濾器

currency 過濾器將數字格式化為貨幣格式:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="costCtrl">

数量: <input type="number" ng-model="quantity">
价格: <input type="number" ng-model="price">

<p>总价 = {{ (quantity * price) | currency }}</p>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('costCtrl', function($scope) {
    $scope.quantity = 1;
    $scope.price = 9.99;
});
</script>

</body>
</html>

執行實例»

點擊"運行實例" 按鈕查看線上實例



#為指令新增篩選器

#過濾器可以透過一個管道字元(|)和一個過濾器加入到指令中。

orderBy 篩選器依照運算式排列陣列:

#實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="namesCtrl">

<p>循环对象:</p>
<ul>
  <li ng-repeat="x in names | orderBy:'country'">
    {{ x.name + ', ' + x.country }}
  </li>
</ul>

</div>

<script src="namesController.js"></script>

</body>
</html>



####################################################################################################################運行實例»######點擊"運行實例" 按鈕查看線上實例################過濾輸入######輸入過濾器可以透過一個管道字元( |)和一個過濾器加入指令中,該過濾器後面跟著一個冒號和一個模型名稱。 #########filter### 過濾器從陣列中選擇一個子集:############實例#####
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="namesCtrl">

<p>输入过滤:</p>

<p><input type="text" ng-model="test"></p>

<ul>
  <li ng-repeat="x in names | filter:test | orderBy:'country'">
    {{ (x.name | uppercase) + ', ' + x.country }}
  </li>
</ul>

</div>

<script src="namesController.js"></script>

</body>
</html>
####### ##運行實例»######點擊"運行實例" 按鈕查看線上實例#############