AngularJS预输入名称未定义

时间:2018-10-12 01:41:35

标签: javascript html angularjs

返回结果时我变得不确定,有人可以在这里帮助我吗?我知道那里也有类似的问题,但我不明白解决方案。因此,再次询问。

JS:

 $scope.cnames = CombinedName;
 console.log($scope.cnames)

控制台日志视图:

enter image description here

最后,我的html代码:

      <input type="text" ng-model="selected" uib-typeahead="NAME 
     for cname in cnames | filter:$viewValue | limitTo:8">

查看即时消息:

enter image description here

2 个答案:

答案 0 :(得分:1)

您只需将其绑定为,

<input type="text" ng-model="selected" typeahead="cname for cname in cnames | filter:$viewValue | limitTo:8" class="form-control">

DEMO

答案 1 :(得分:0)

由于要使用的cnames数组是一个字符串,因此在遍历该数组时必须使用特定的形式。通常,ng-options / uib-typeahead希望您要迭代的数组是对象数组。

在处理字符串数组时,可以使用

cname for cname in cnames

正确地将下拉菜单的文本分配给数组元素的文本。这会将selected值设置为源数组中所选元素的索引。

cname as cname for cname in cnames

selected值设置为文本本身。

所有可能的表格都记录在https://docs.angularjs.org/api/ng/directive/ngOptions中。这些是UI-Bootstrap使用的相同形式。