在日期angularjs中过滤月份

时间:2016-04-06 03:49:01

标签: angularjs

我成功过滤了angularjs的日期。但我想过滤一个月。我想如果我输入01只出现泰坦尼克号。这是我的样本数据。

查看

<input type="text" ng-model="search" />
<tr ng-repeat="n in eventlist | filter:search">
    <td>{{n.name}}</td>
    <td>{{n.date | date:"dd MMMM yyyy"}}</td>
</tr>

控制器

$scope.eventlist = [
    {name:"Titanic", date:"2016-01-24"},
    {name:"Civil War", date:"2016-07-01"}
];

1 个答案:

答案 0 :(得分:2)

你应该使用custome过滤器。试试这样。

&#13;
&#13;
var app = angular.module('main', []);
app.controller('DemoCtrl', function ($scope,$filter) {

   $scope.eventlist =
     [
       {name:"Titanic", date:"2016-01-24"},
       {name:"Civil War", date:"2016-02-15"}
    ];
  
   $scope.myFilter = function(month,search){
       return function(event) {
          return event.date.split('-')[1] == $scope.search ?true:false;
         }
   }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-controller="DemoCtrl" ng-app="main">
   <input type="text" ng-model="search" />
   <div ng-repeat="n in eventlist | filter:myFilter()" >
    <span>{{n.name}}</span>
    <span>{{n.date}}</span>
   </div>
</div>
&#13;
&#13;
&#13;