我需要将uib-typeahead指令集成到下拉列表中。因此,当他们开始输入时,应该会出现自动完成,如果他们选择下拉菜单,则应显示下拉菜单中的项目列表
<div id="parentDiv ">
<select class="form-control " ng-model="$ctrl.name" ng-change="$ctrl.selectName()" ng-options="person.name for person in $ctrl.people ">
<option value=" "></option>
</select>
<input type="text" class="form-control app-input" placeholder="Name" ng-model="$ctrl.name" required>
</div>
当我在下拉列表顶部覆盖输入悬停的样式时,这是有效的 但是当我尝试将输入作为uib-typeahead时,没有任何作用。 我希望输入更像这个
<input type="text" class="form-control app-input" placeholder="Name" ng-model="$ctrl.name" maxlength="50" ng-model="$ctrl.name" typeahead-on-select="$ctrl.selectItem($item)" uib-typeahead="differentName.Name for differentName in $ctrl.differnetNames" typeahead-min-length="3" typeahead-wait-ms="600" />
这个实现可能不是最佳实现,但我没有想法。 我只想让第一个选项成为提前输入的输入。 我也在尝试使用ng-repeat手动提供选项,仍在使用它。因此,欢迎任何其他最佳实践。
另外,我知道这个要求听起来很疯狂,但我只是信使。
更新
尝试ng-repeat
方式,我想到的唯一解决方案是使用样式将文本字段放在选择的顶部,并在它们与select交互时隐藏它。我很肯定这根本不是一个好的做法。希望有任何替代解决方案。