Filtrem yalnızca düğme tıklamasıyla çalıştırılacak gibi görünmüyor, ilk kez çalıştırılıyor ve daha sonra kutudaki herhangi bir metin temelinde otomatik olarak filtreler. Birisi bana yardım edebilir mi?Köşeli süzgeç yalnızca düğme tıklandığında
<section class="searchField">
<input type="text" ng-model="searchTerm">
<button type="button" ng-click="search()">Search</button>
</section>
<section ng-show="!resultsHidden">
<div class="no-recipes" ng-hide="players.length">No results</div>
<article class="playerSearch" ng-repeat="player in players | filter: filter" ng-cloak>
<h2>
<a href="#/players/{{player._id}}">{{player.name}}</a>
</h2>
</article>
</section>
JavaScript:
$scope.myFilter = function (player) {
var found = [];
for(player in players) {
if (player.name === $scope.searchTerm || player.number === $scope.searchTerm){
found.push(player);
}
}
return found;
};
function search(){
$scope.filter = $scope.searched;
$scope.resultsHidden = false;
}
$scope.searched = function(player){
if (!$scope.searchTerm || (player.number == $scope.searchTerm || (player.name.toLowerCase().indexOf($scope.searchTerm.toLowerCase()) != -1))){
return true;
}
return false;
};