uib typeahead与现有下拉列表集成

时间:2017-12-04 07:08:12

标签: javascript angularjs angular-ui-bootstrap

我需要将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交互时隐藏它。我很肯定这根本不是一个好的做法。希望有任何替代解决方案。

0 个答案:

没有答案