3

我有一个 <input> 使用Bootstrap typeahead 和 Angular UI 指令。下拉列表中值的显示和选择工作正常。

但是,当我在输入中键入不是下拉选项之一的值时,该值不会绑定到模型属性。然而,我输入的内容仍保留在输入中,就好像它是有效输入一样。

在下面的示例中,当我在输入中键入不是 autocomplete.referrers 数组中的选项的文本时,此文本不会绑定到 registration.referrer。

我是否正确配置了输入?

<input type="text" 
    name="referrer" 
    ng-model="registration.referrer"
    autocomplete="off"
    typeahead="referrer for referrer in autocomplete.referrers | filter:$viewValue"
    />

也许对随机文本输入的限制是设计使然?

如果您能回答这个问题,非常感谢。

4

2 回答 2

1

@reggoodwin 这是当前版本的预输入指令的设计: https ://github.com/angular-ui/bootstrap/blob/929a46faa3a3eea3dec7ae8c1387f332eee9a9bc/src/typeahead/typeahead.js#L110

这种行为背后的基本原理是来自自动完成的值应该作为参考值。但我正在思考这种行为,它可以被配置。随意在https://github.com/angular-ui/bootstrap中打开一个问题来讨论更多。

于 2013-03-24T21:14:15.023 回答
0

将此指令添加为属性对我有用:

<input typeahead-editable="false" >
于 2014-10-03T17:18:44.150 回答