检查过滤器在角度js中返回的任何值

时间:2015-02-27 13:54:12

标签: angularjs model-view-controller filter

我有一个使用过滤器的视图 filter:test_id 。它工作得很好。我想要做的是如果搜索过滤器没有返回任何数据我可以调用一个函数在过滤器返回null的时刻在控制器中,或者按照搜索显示列表中没有数据。

<input type="text" id="test_id" ng-model="test_id" value=""/>

<div class="test_list"> 
              <ul>
                <p> testID :{{test_id}}</p>-->
                 <li ng-repeat="test in test_list | filter: test_id">
                    {{test}}
                 </li>
              </ul>

         </div>

1 个答案:

答案 0 :(得分:0)

试试这个。

在您的控制器中

$scope.filteredData = $scope.data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // dummy data

$scope.applyFilter = function () {
    $scope.filteredData = $scope.$eval('data | filter: filterWith');

    if (!$scope.filteredData || !$scope.filteredData.length) {
        // no-data. 
        // do your stuff.
    }
}

在您的标记中

<input type="text" ng-model="filterWith" ng-change="applyFilter()">
<div data-ng-repeat="item in filteredData" >
    {{item}}
</div>
相关问题