UI Bootstrap Typeahead игнорирует выбранное значение

0

Я использую Typeahead Ui-Bootstrap. У меня есть два поля Typeahead (Origin and Destination Airport), и оба имеют одинаковый источник данных. Я хочу, чтобы исключить выбранное значение Origin в списке Destination. Как я могу это сделать?

происхождения

<input type="text" ng-model="orig" typeahead="s in data | filter:$viewValue" class="form-control input-lg">

Место назначения

<input type="text" ng-model="dest" typeahead="s in data | filter:$viewValue" class="form-control input-lg">

Я нашел в Google что-то вроде

ng-if="person.name_key!='FirstPerson'"

в элементе ng-repeat, но здесь у меня нет доступа для ng-repeat в HTML.

Пожалуйста помоги.

Теги:
angularjs-ng-repeat
angular-ui-bootstrap
typeahead.js

1 ответ

1
Лучший ответ

Вы можете использовать typeahead-on-select($item) для выполнения обратного вызова, который удалит выбранный элемент из массива данных следующим образом:

    <input type="text" ng-model="orig" typeahead="s for s in data | filter:$viewValue" 
           class="form-control input-lg" typeahead-on-select="onSelect($item)">

А что касается функции onSelect -

  $scope.onSelect = function(item){
    $scope.data.push($scope.previouslySelected); // push back the previously selected
    $scope.previouslySelected = item; // save the currently selected
    var index = $scope.data.indexOf(item);
    $scope.data.splice(index, 1);
  };

Здесь работает плункер

  • 0
    Что я могу сделать, если я получаю данные с сервера?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню