Angular-UI: результаты Force Typeahead
У меня есть текстовое поле, которое использует функция typeahead AngularUI. Выглядит это так:
<input typeahead="eye for eye in autocomplete[column] | filter:$viewValue">
Я хотел бы заставить пользователя выбрать опцию из списка, который генерируется. Если они вводят что-то, что не находится в списке точно так, как кажется, при размытии (щелчок вне текстового поля), я хотел бы, чтобы значение текстового поля было сброшено до его исходного значения.
является ли эта функциональность частью директивы typeahead, или мне нужно будет расширить это? Я искал около 10 минут в google и stackoverflow, но не смог найти никакой соответствующей документации.
может ли кто-нибудь указать мне в правильном направлении, чтобы выполнить это?
1 ответов
в плагине есть атрибут, чтобы заставить существующие значения только:typeahead-editable="false"
. Значение по умолчанию:true
.
только $modelValue
устанавливается пустым, когда выбрано неправильное значение, и это действительно необходимо, иначе мы не смогли бы ничего написать. The $viewValue
остается с последним введенным текстом. Возможно, вы сможете привязать собственное событие размытия к полю, чтобы сбросить $viewValue
?
вот ваш JsFiddle с выбранным значением отображается: http://jsfiddle.net/ZjPWe/61/
вы также можете использовать атрибут typeahead-on-select
который требовал обратного вызова при выборе значения, но я не уверен, что он будет работать с typeahead-editable="false"
потому что значение не выбирается.