角度 UI 预测文本:如何输入未包含在输入数组中的数据
Angular UI Predictive Text: How to Enter Data not Included in Input Array
我正在尝试使用 Angular UI 的预键入功能来填充列表。我的问题是我希望它不要将输入中接受的内容限制为仅提供数组中的那些字符串。typeahead-editable
选项似乎可以工作,但是当我将其作为输入中的属性时,它似乎不起作用。也许这不是它的用途?
我(默认值:true) - 是否应将模型值限制为仅从弹出窗口中选择的值?
不太清楚"弹出窗口"是什么,所以也许它不是我最初认为的输入模型。
我可以通过捕获每个按键下拉列表中的值并将其保存到每个按键事件(输入除外)的$scope
来解决此问题
$scope.freeText = angular.element('#myinput').val();
然后当输入保存值到#myinput
的ng-model
值,并清除输入
$scope.selected = $scope.freeText = '';
但问题是完整的自动完成文本在输入中闪烁半秒钟。如何使用此预测搜索,以便用户可以输入他或她想要的任何内容,并且仅在需要时采用建议的值?
这正是此属性的用途
工作普伦克 http://plnkr.co/edit/85SmgdvnSKWfda6QNNQZ?p=preview
<h4>Limited - model not set unless input matches available options</h4>
<pre>Model: {{selected | json}}</pre>
<input type="text"
ng-model="selected"
typeahead-show-hint="true"
typeahead-focus-first="false"
typeahead-editable="false"
uib-typeahead="state for state in states | filter:$viewValue | limitTo:8" class="form-control">
<h4>Not limited - model set as soon as you start typing</h4>
<pre>Model: {{selected2 | json}}</pre>
<input type="text" ng-model="selected2"
typeahead-show-hint="true"
typeahead-editable="true"
uib-typeahead="state for state in states | filter:$viewValue | limitTo:8" class="form-control">
当该选项设置为 true 时,模型将立即设置,无论您键入什么,如果禁用模型,不仅不会设置,而且输入字段模糊时
输入将被清除如果这对您不起作用,那么问题很可能出在其他地方,如果没有真正的代码,就很难回答
相关文章:
- 如何使用JQuery检查输入(电子邮件)字段是否包含特殊字符
- jQuery将输入集中在下一个tr->td时,td包含一个输入字段,但从不关注html选择
- 如何在Jquery中的.ech()中包含动态添加的输入值
- 如果输入包含数组中的任何单词
- jQuery选择器,用于查找包含具有特定值的TD输入的TR
- 将HTML输入到包含的索引页中
- 将jQuery输入包含在表单帖子中
- 大写输入字段中包含的每个单词
- 在innerHTML中包含变量值以创建输入id's和占位符
- 如何检查“http://”是否包含在 Angular .js 应用程序的 url 输入中
- 角度 UI 预测文本:如何输入未包含在输入数组中的数据
- 在包含输入的输入文本框中输入字符后,移动到新页面
- 如果输入字段通过 ID 或类包含内容,则禁用输入字段
- 如果 e.keyCode 是“输入”按钮,并且元素包含其他文本,则验证条件
- 将焦点设置在带有错误消息的第一个输入元素上,并将包含它的 TabStrip 选项卡设置为活动状态
- 解析包含 /regexp/ 文字的类似 JSON 的输入
- AngularJS:防止空的(但脏的)表单输入包含在AJAX帖子中
- 为什么当输入包含换行符时regex会失败
- 如果输入包含值,Jquery将隐藏标签
- 确定用户输入包含URL