0
我有以下HTML:如何預選擇值
<div ng-controller="CreateSpreadsheetCtrl as csCtrl" ng-init="csCtrl.init()">
<select multiple="multiple" style="height:100px;" class="form-control"
ng-model="csCtrl.Template.BusinessUnitMappings"
ng-options="department as department.LocalizedName for department in csCtrl.DepartmentMasters">
</select>
</div>
的CreateSpreadsheetCtrl.init()內,我們加載稱爲數組「DepartmentMasters」(csCtrl.DepartmentMasters)其中包含對象列表(例如{Id:1,Name:「Department 1」},{Id:2,Name:「Department 2」})。
同樣在init()方法中,我們加載這個「csCtrl.Template」對象,它有一個名爲「BusinessUnitMappings」(csCtrl.Template.BusinessUnitMappings)的屬性,它是一個DepartmentMaster對象數組。
通過上面的代碼,它可以正確地綁定到模型,並且當您更改選擇時,csCtrl.Template.BusinessUnitMappings被正確綁定。
但是,當csCtrl.Template.BusinessUnitMappings預先加載了現有的對象數組時,它不會在頁面初始加載時在UI中選擇它。
你可以通過使用'通過department.Id'跟蹤解決您的問題,但它有害,因爲你使用'as'語法.. –
@PankajParkar謝謝你的repsonse。你能否詳細說明你的意思是「但它用作語法時有害」? – thiag0
看看文檔鏈接[這裏](https://docs.angularjs.org/api/ng/directive/ngOptions#-select-as-) –