2017-02-25 119 views
0

我已經有了與該特定選擇框相關的模型的現有值,並且我有不同的源列表來呈現選項,在這種情況下,我無法將選擇框最初選擇默認值。角度選擇選項沒有選擇,即使有默認值設置

HTML

<div ng-controller="SampleCtrl as vm"> 
    <input type="text" ng-model="vm.new_object.name"><br/> 
    <select name="test" id="test" ng-model="vm.new_object.provider_id"> 
    <option ng-repeat="opt in vm.list" value="{{opt.id}}" ng-selected="vm.new_object.provider_id == opt.id"> 
     {{opt.name}} 
    </option> 
    </select> 
</div> 

SCRIPT

angular.module('app', []) 

.controller('SampleCtrl', function($scope) { 

vm = this; 


vm.list = [{ 
    "id":1 
    ,"name":"sdfgg" 
    ,"website":"dfgdg" 
    ,"is_active":"1" 
    ,"is_deleted":"1" 
}, { 
    "id":2 
    ,"name":"sfd" 
    ,"website":"sdfsdf" 
    ,"is_active":"1" 
    ,"is_deleted":"0" 
}, { 
    "id":3 
    ,"name":"sfs" 
    ,"website":"dfsdfs" 
    ,"is_active":"0" 
    ,"is_deleted":"0" 
}]; 

vm.new_object = { 
    "name": "some thing" 
    ,"provider_id": 2 
} 

}) 

Link 這是演示plnkr鏈接,同樣的問題。

如果有任何想法,請繞我出去。

+0

這個問題是問每隔一天。閱讀文檔。使用ng選項。 https://plnkr.co/edit/r8O0yKnozC8g5IKgmsnV?p=preview –

+0

我經歷了所有相關的問題,仍然沒有解決我的問題,這就是爲什麼我再次問我的用例 –

+0

謝謝,這一個工作在編輯選項,但我在新選項中使用相同的東西,我需要 這種選項在頂部如果我沒有找到值,那麼這應該在那裏,有什麼想法? –

回答

0

避免在選擇中使用ng-repeat。正確的用法是NG-選項

<select name="test" id="test" ng-model="vm.new_object.provider_id" 
     ng-options="opt.id as opt.name for opt in vm.list"> 
</select> 

這是你更新plunkr

+0

我用ng重複,因爲我想這個選項雖然沒有已定義的值 –

+0

還有一件事,我也需要使用is_active標誌進行過濾 –