我有< input>使用Bootstrap typeahead with Angular UI directive。 下拉列表中显示和选择值的工作正常。
但是,当我在输入中键入一个不是下拉选项之一的值时,该值不会绑定到model属性。然而,我输入的内容仍然在输入中,就好像它是有效输入一样。
在下面的示例中,当我在autocomplete.referrers数组中不是选项的输入中键入文本时,此文本不会绑定到registration.referrer。
我是否正确配置了输入?
<input type="text"
name="referrer"
ng-model="registration.referrer"
autocomplete="off"
typeahead="referrer for referrer in autocomplete.referrers | filter:$viewValue"
/>
也许对随机文本输入的限制是设计的?
非常感谢你能回答这个问题。
答案 0 :(得分:1)
@reggoodwin这是在当前版本的typeahead指令中的by-design: https://github.com/angular-ui/bootstrap/blob/929a46faa3a3eea3dec7ae8c1387f332eee9a9bc/src/typeahead/typeahead.js#L110
此行为背后的基本原理是自动填充中的值应作为参考值。但我有点思考这种行为,它可以配置。请随意在https://github.com/angular-ui/bootstrap中打开一个问题,讨论更多内容。
答案 1 :(得分:0)
添加此指令作为属性对我有用:
<input typeahead-editable="false" >