У меня возникли проблемы с созданием списка для директивы bootstrap ui-typeahead:
$http-вызов возвращает следующий json:
[{"title":"FOO", "equipment":[{"model":"Model 1"}, {"model":"Model 2"}], "combine":"true"}]
Что мне нужно сделать, это:
- объединить заголовок «FOO» с вводом, который пользователь уже ввел в поле ввода, и
- создайте список оборудования: «Модель 1» и «Модель 2» (фактические раскрывающиеся данные) либо как 2 отдельных раскрывающихся элемента ИЛИ объедините «Модель 1» и «Модель 2», если для «объединения» установлено значение « true", что даст только ОДИН элемент раскрывающегося списка.
При нажатии на одну из записей «оборудование» в раскрывающемся списке мне нужно вызвать функцию, которая устанавливает выбранную модель в объекте службы, а затем вызывает функцию URL-адреса $location.
Это возможно?
Вот шаблон, который я использую через "typeahead-template-url":
<input typeahead="val for val in autoComplete($viewValue)"
typeahead-template-url="searchAutocompleteTpl.html"
ng-model="query"/>
<script type="text/ng-template" id="searchAutocompleteTpl.html">
<span>found in: </span>
<div ng-repeat="eqp in match.model.equipment">
<a href="" ng-click="showItem(eqp.model)">
{{eqp.model}}
</a>
</div>
</script>