2016-08-29 5 views
0

私は$フィルタフィルタは、データをフィルタリング角度フィルタ:フィルタのコールバックを取得するにはどうすればいいですか?

HTML

<input type="text" ng-model="searchvalue"> 
<span ng-click="searchbtn()">Search</span> 

を完了した後、ユーザーが自分のデータをキーワードに入るとJS

$scope.searchbtn = function() { 
    $scope.loading = true; 
    $scope.mysearchvalue = $scope.searchvalue; 
} 

がフィルタリングされると、私は必要なコールバック関数を探していますデータをフィルタリングした後のコールバック関数。

私は「DOMSubtreeModified」を使用してみましたが、同様の理由だけで/ wのコントローラに少し遅れ(デバウンス)を使用し、フィルタ結果ではない、私のコメントで述べたログを続け

var myElement = angular.element(document.getElementById("mycontent")); 
myElement.bind("DOMSubtreeModified", function() { 
    console.log("keep outputting this message"); 
}); 

enter image description here

+0

なぜ '$のwatch'' searchvalue'とコントローラで '$ filter'を考えてみましょうか? –

+0

こんにちは@MikkoViitalaの返信をありがとう、私はちょうど角度を始めた説明してくださいできますか? –

+0

あなたは $ scope.items = $ filter( 'filter')($ scope.items2、val)を意味しましたか? –

答えて

1

を返してきましたo別の入力ボタン。

HTMLテンプレート

<body ng-controller="MainCtrl"> 
    <pre ng-bind="filteredData | json"></pre> 
    <input type="text" ng-model="search" ng-model-options="{debounce:250}"> 
</body> 

はJavaScript

angular.module('app', []) 
.controller('MainCtrl', function($scope, $filter) { 
    $scope.data = [{text:'aa'},{text:'ab'}]; 
    $scope.$watch('search', function(val) { 
    $scope.filteredData = $filter('filter')($scope.data, val); 
    }); 
}); 

image

関連する問題