我有一个使用过滤器的视图 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>
答案 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>