2015-03-23 5 views
0

У меня есть атрибут машинописного на поле ввода, которое выглядит следующим образом:Объединение два переменных к метке

typeahead="user.email as user.lastname for user in uc.userList | filter:$viewValue | limitTo:8" 

так, я связываю адрес электронной почты, используя фамилию в качестве метки для функции машинописной. Есть ли возможность объединить две переменные на этикетке, как так:

typeahead="user.email as (user.firstname AND user.lastname) for user in uc.userList | filter:$viewValue | limitTo:8" 
+0

Вы попробуйте 'машинописный-шаблонный url'? – Arulkumar

+0

nope, я посмотрю на это :) – PlasmaLampe

+0

Какую библиотеку типов вы используете? – Sulthan

ответ

1

Самое простое решение этой проблемы заключается в самом деле CONCAT обоих значений с помощью простых строковых операторов, как так:

typeahead="user.email as user.firstname + ' ' + user.lastname for user in uc.userList | filter:$viewValue | limitTo:8" 

Кроме того, можно использовать методы шаблонных как машинописный-шаблон для URL, которые объясняются более подробно здесь: Bootstrap-UI Typeahead display more than one property in results list?

0

Вы можете добиться этого с помощью typeahead-template-url также:

<div ng-controller="TypeaheadCtrl"> 
    <input type="text" ng-model="customSelected" 
    typeahead="user.email for user in userList | filter:$viewValue | limitTo:8" 
    typeahead-template-url="customTemplate.html"> 
</div> 

И вы должны добавить свои необходимые столбцы в файле шаблона:

<script type="text/ng-template" id="customTemplate.html"> 
<a> 
    <span bind-html-unsafe="match.model.firstName | typeaheadHighlight:query"></span> 
    <span bind-html-unsafe="match.model.lastName | typeaheadHighlight:query"></span> 
</a> 
</script> 

Образец plunker: http://plnkr.co/edit/Q7zJ9wLoB5Y5lM0lwh10

Смежные вопросы