2016-05-13 74 views
1

我正在尝试使用动态数据为组合框添加值。问题是这个值没有显示在我选择的组合框中。无法将值添加到组合框中的ng模型中

这里是我的html

<label>Veuillez choisir l'outil de référence :</label> 
<select class="form-control" 
     ng-model="refouti" 
     ng-change="getversion()"> 
    <option value="" selected> 
     Tous 
    </option> 
    <option ng-repeat="o in outills" 
      value={{o.id}}> 
     {{o.nomref}} 
    </option> 
</select> 

在我的控制器时,我想增加价值refouti这样的:

$scope.refouti="OPCOM"; 

我得到这样的

enter image description here

谢谢到任何支持。

+0

你想增加值作为默认值? –

+0

不,它不是一个默认值我不想粘贴所有的代码,因为它会看起来更复杂''scope.refouti =动态值,在每个条件下改变'ps如果我想添加一个默认值,我会添加一个默认值选项与该值 –

+1

我建议你在选择中使用ng-options而不是ng-repeat。 –

回答

1

在select上使用ng-options。

这里发生的事情:

你的NG-重复的作品,它打印出多个<option>标签。 但是没有使用ng-options,angular并不知道他在玩选择。因此,改变ng-model的值直接改变了它清空的选择框的'值'。在你的情况下,你需要将一个新的数组对象推到$scope.outills(或覆盖),而不是$scope.refouti

+0

okey我同意你的说法,但我试过使用ng-option它仍然是同样的问题,当我使用'$ scope.refouti = anyvalue时, '在ng选项中,我有相同的ng模型,我没有像这样改变它'ng-model =“selected”',这里的问题是我如何在我的combobox中选择一个值anyvalue' –

+1

也许这会回答你的问题:http://stackoverflow.com/questions/17968760/how-to-set-a-selected-option-of-a-dropdown-list-control-using-angular-js –