0

我的模型中有一个字符串数组,我想为每个字符串创建一个文本输入并将它们绑定到数组,使用 Twitter Bootstrap typeahead 和它们。这是我尝试过的:

<div class="control-group inline" ng-repeat="offer in userinfoadd.offers">
    <label class="control-label" for="offer">Offer </label>
    <div class="controls">
            <input type="text" bs-typeahead="typeahead" value="{{offer}}">
    </div>
</div>

这是我的控制器中的代码:

  $scope.userinfoadd = {
     offers: ['one','two','three','four','five']
  };

  //get the typeahead
  $http.get('data/activities.json').success(function(data) { //TODO: Stub, replace for an API call!
    $scope.typeahead = data;
  });

现在输入渲染但它们不起作用。有任何想法吗?

4

1 回答 1

0

您需要将模型绑定到输入,如下所示,然后它应该可以工作:

<input type="text" bs-typeahead="typeahead" ng-model="userinfoadd.offers[$index]" />

在这里看一个简单的例子:http: //jsfiddle.net/flek/hwpuT/

更新

不幸的是,这似乎不是一个优雅的想法,因为一旦您遇到数组条目,Angular 就会重新呈现您的列表,这会在您每次遇到 1 个字符时模糊您的输入。

于 2013-02-16T13:11:35.223 回答