2015-08-18 3 views
0

Я пытаюсь получить какой-то результат из пользовательского фильтра с вводом и созданием dropdwon. Ввод на вход должен начинаться с фильтра и показывать результаты фильтрации. Это функция:Угловой фильтр с автозаполнением undefined

$scope.filterText = ""; 
$scope.filterDropdown = function(textTyped) { 
    var searchFilter = $scope.baseUrl + "&searchStr="; 


    return $http.get(searchFilter + textTyped, { 
     cache: true 
    }).then(function(data) { 
     $scope.results = data.data.data.data; 

     return $scope.results; 
    }); 
}; 

и здесь HTML:

<input type="text" data-ng-model-options="{ updateOn: 'default blur', debounce: {'default': 500, 'blur': 0} }" 
     ng-model="item.search_value" placeholder="{{item.description}}" data-ng-change="filterDropdown(filterText)"/> 
<div> 
    <ul data-ng-repeat="descriptions in results.description"> 
     <li>{{descriptions}}</li> 
    </ul> 
</div> 

на самом деле я могу видеть только список всего JSON! Я имею в виду, когда я начала набирать запускается функция, но текст я не типа работы и результат что-то вроде:

http://192.168.1.121:8280/test/searchStr= 

где searchStr следует заполнять каждый раз, когда я набираю слово. Например, я хочу найти: hello. Я нажму "ч"

http://192.168.1.121:8280/test/searchStr=h 

затем

http://192.168.1.121:8280/test/searchStr=he 
http://192.168.1.121:8280/test/searchStr=hel 
http://192.168.1.121:8280/test/searchStr=hell 
http://192.168.1.121:8280/test/searchStr=hello 

понять? Как я могу исправить?

+0

модель ввода привязана к "ng-model =" item.search_value "" и ng-change привязана к какой-либо другой переменной сферы "filterText". ng-change должно быть привязано к переменной ng-model (item.search_value), если изменение входного текста должно быть передано функции. – Bharat

ответ

0

Вам необходимо передать имя ng-модели в функции вызова.

data-ng-change="filterDropdown(item.search_value) 

<input type="text" 
data-ng-model-options="{ updateOn: 'default blur', debounce: {'default': 500, 'blur': 0} }" 
ng-model="item.search_value" placeholder="{{item.description}}" data-ng-change="filterDropdown(item.search_value)"/> 
Смежные вопросы