$ scope.watch를 사용하여 자동 완성을 하려는데 완벽하게 작동하지만 옵션을 선택하면 항목을 클릭하여 입력을가하지만 항목은 표시하지 않습니다. 입력에 넣을 때 시계가 다시 활성화되기 때문에 숨길 수는 없습니다 ...시계로 자동 완성 항목 숨기기
하나를 선택할 때 항목을 숨기는 방법을 모릅니다.
어떤 도움 ..
<input type="text" ng-model="selected" />
<ul class="listFavoInbox">
<li ng-repeat="favo in resultAuto" ng-click="itemFavoInbox(favo.first,favo.id)">
{{favo.first}}
</li>
</ul>
$scope.selected = "";
$scope.arrayFavo = [
{'id': 1, 'first': 'John', 'last': 'Depp', 'age':52, 'gender':'male'},
{'id': 2, 'first': 'Sally', 'last': 'JoHanson', 'age':13, 'gender':'female'},
{'id': 3, 'first': 'Taylor', 'last': 'Swift', 'age':22, 'gender':'female'},
];
$scope.$watch('selected', function() {
$scope.resultAuto = [];
for(var i=0; i<$scope.arrayFavo.length; i++){
var text = angular.lowercase($scope.arrayFavo[i].first);
var search = angular.lowercase($scope.selected);
// console.log("text array",text);
// console.log("text",$scope.selected);
if (search != ""){
if (text.indexOf(search) !== -1){
$scope.resultAuto.push($scope.arrayFavo[i]);
}
console.log($scope.resultAuto);
}
}
});
$scope.itemFavoInbox = function (name,id){
$scope.selected = name;
$scope.resultAuto = "";
}
확인, 그것은 좋은,하지만 내 실제 질문을 내가 항목을 선택할 때, 나는 이것이 내 문제이며, 항목 목록을 숨길 필요가있다. – user3810167