2014-05-21 91 views
3

我在使用Angularng-model在select2選擇框中預選一個選項時遇到問題。這裏是我的代碼:在控制器使用angular-ui-select2預選選項0.0.5

$scope.filter = { 
    searchValue: '', 
    departmentId: 'Department2' 
} 

HTML

<select 
    class="form-control" 
    ui-select2="{allowClear: true}" 
    ng-model="filter.departmentId"> 
    <option value=""></option> 
    <option ng-repeat="(department, majors) in departments" value="{{department}}">{{department}}</option> 
</select> 

數據

{ 
    "Department1": [ 
    { 
     "Name": "Major1", 
     "Id": 1 
    }, 
    { 
     "Name": "Major2", 
     "Id": 2 
    }, 
    { 
     "Name": "Major3", 
     "Id": 3 
    } 
    ], 
    "Department2": [ 
    { 
     "Name": "Major4", 
     "Id": 4 
    }, 
    { 
     "Name": "Major5", 
     "Id": 5 
    }, 
    ] 
} 

由於

角碼據我所知,這在angular-ui-select2的版本0.0.2中工作,但不在該版本之上。我找不到任何有關如何做到這一點的信息。

在此先感謝!

+0

這可能來自您在那裏輸入的錯字嗎? ** <** option value =「」> – alou

+0

我希望:)但沒有,只有一個錯誤,當我把我的代碼粘貼到stackoverflow。好,但是,謝謝! – Bjarki

回答

0

您正在爲「$ scope.filter.departmentId」分配一個字符串值,其中由瀏覽器呈現之後生成的值是內部映射到對象的字符串。 所以直接分配在這裏不起作用。這裏的設計看起來很臭。要麼你做一個單獨的字符串數組,或者你可以給一個id來選擇標籤,並使用JavaScript獲取元素,然後爲它分配一個值。