如何使自动完成就像 google 在 angular ui-select 中自动建议一样

How to make an autocomplete just like google auto suggest in angular ui-select

我正在使用 angular ui-select 进行自动完成。当用户开始输入时,我想将最匹配的项目显示为带水印的,并且当用户按下 tab 键时,它应该是 selected(与 google 自动建议相同)

也请看图片。你可以看到,当我输入 'auto' 时,'complete' 显示为水印,如果我按 TAB,它将被 selected。

使用 angular-ui select 库...它将进行 REST 调用以从后端系统获取数据以进行自动完成下拉....和水印..你可以通过CSS更改。 对于图书馆,请找到 URL:https://github.com/angular-ui/ui-select

有一个 bower 插件 autocompletelikegoogle,您可以创建一个 angular 指令来在您的应用程序中呈现自动完成输入。

Directive.js

angular.module('app').directive('autoComplete', [
  '$timeout', function($timeout) {
    return function(scope, element, attrs) {
      var auto;
      auto = function() {
        $timeout((function() {
          if (!scope[attrs.uiItems]) {
            auto();
          } else {
            element.autocomplete({
              source: [scope[attrs.uiItems]]
            });
          }
        }), 5);
      };
      return auto();
    };
  }
]);

HTML 使用示例

<input type="text" auto-complete ui-items="list" ng-model="yourModel" class="form-control" placeholder="Tipe something" />

变量列表包含您在自动完成输入中的可能结果数组,在名为 ui-items 的属性中设置。