<tags-input>中的AngularJS <auto-complete>指令在chrome浏览器中不起作用

时间:2016-07-02 10:07:54

标签: html angularjs

我正在尝试使用ngTagsInput指令在AngularJS中创建一个简单的标签输入字段。我在tags.json中有一些标签名称,我想在输入字段中输入标签名称时将其显示为建议,我正在尝试使用auto-complete指令,在tags-input中。

这是index.html:

<!DOCTYPE html>
<html ng-app="plunker">

  <head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <script>document.write('<base href="' + document.location + '" />');</script>
    <link rel="stylesheet" href="http://mbenford.github.io/ngTagsInput/css/ng-tags-input.min.css" />
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular.min.js"></script>
    <script src="http://mbenford.github.io/ngTagsInput/js/ng-tags-input.min.js"></script>
    <script>
      var app = angular.module('plunker', ['ngTagsInput']);

      app.controller('MainCtrl', function($scope, $http) {
        $scope.tags = [
          { text: 'Tag1' },
          { text: 'Tag2' },
          { text: 'Tag3' }
        ];

        $scope.loadTags = function(query) {
          return $http.get('tags.json');
        };
      });
    </script>
  </head>

  <body ng-controller="MainCtrl">
    <tags-input ng-model="tags" add-on-paste="true">
      <auto-complete source="loadTags($query)"></auto-complete>
    </tags-input>
    <p>Model: {{tags}}</p>
  </body>

</html>

这是tags.json:

[
  { "text": "Tag1" },
  { "text": "Tag2" },
  { "text": "Tag3" },
  { "text": "Tag4" },
  { "text": "Tag5" },
  { "text": "Tag6" },
  { "text": "Tag7" },
  { "text": "Tag8" },
  { "text": "Tag9" },
  { "text": "Tag10" }
]

代码在firefox中正常运行,并在您键入&#39;标记&#39;后按下拉列表方式显示建议。在输入字段中。但是在Chrome中它不显示建议,但其余的工作正常。

以下是Chrome中应用的屏幕截图: enter image description here

知道如何在chrome中实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

所以,在挖掘了一点之后,我发现chrome存在一些安全问题,这些问题不允许从本地计算机加载文件,在本例中为tags.json。 解决方案:您可以将文件托管在某个服务器上,甚至可以在WAMP上托管,应该可以正常工作。