2014-06-30 26 views
0

我有一個關鍵字段應該被選入一個SELECT html元素。這個SELECT填充了一個ng-repeatAngular ng-repeat不會選擇綁定值

我定義了兩個SELECT查詢,用NG重複,另用NG選項:

<div ng-controller="MyDisplayCtrl"> 
    <select ng-model="context.id1"> 
     <option value="">-</option> 
     <option ng-repeat="i in lista" value="{{i.id}}">{{i.value}}</option> 
    </select> Should have "three" selected, but shows - <br/> 

    <select ng-model="context.id2" ng-options="i.value for i in lista"> 
    </select> Selects "three" automatically <br/> 
</div> 

我的控制器是這樣的:

function MyDisplayCtrl($scope) { 
    var x1 = {id: 1, value: 'one'}; 
    var x2 = {id: 2, value: 'two'}; 
    var x3 = {id: 3, value: 'three'}; 
    window.setTimeout(function() { 
     $scope.$apply(function() { 
      $scope.lista = [x1, x2, x3]; 
     }); 
    }, 2000); 

    $scope.context = {id1: 3, id2: x3}; 
} 

我有這個名單帶到客戶端由一個AJAX,所以我在這裏使用了一個setTimeout()

ng-options的方法有效,但我不會有一個對象,唯一的關鍵。

在這個小提琴看看:http://jsfiddle.net/nCG2H/

問題:我試圖理解爲什麼第一個SELECT是不行的,因爲算法中我得到了它依賴於從Ajax響應時間工作。

回答

2

請使用NG-選擇= 「{{i.id}}」,而不是價值= 「{{i.id}}」 ......

+0

這裏的更新小提琴:http://jsfiddle.net/fv25x / –