2016-04-12 11 views
0

Kann mir jemand helfen, wie man 'Name' in ng-Optionen für die folgende Struktur zeigt.Angular ng-Optionen mit Objekt

"systems": { 
    "android": { 
     "name": "Android" 
    }, 
    "ios": { 
     "name": "iOS" 
    }, 
    "web": { 
     "name": "Web" 
    } 
    }, 

Antwort

0

Für Struktur:

$scope.systems = { 
    "android": { 
     "name": "Android" 
    }, 
    "ios": { 
     "name": "iOS" 
    }, 
    "web": { 
     "name": "Web" 
    } 
    }; 

Sie es wie folgt tun:

<select ng-model='system' ng-options='key.name as value.name for (key, value) in systems'></select> 

Selected Value = {{system}} 

Wenn Sie diese Struktur haben müssen:

$scope.systems = 
{ 
    "systems": { 
    "android": { 
     "name": "Android" 
    }, 
    "ios": { 
     "name": "iOS" 
    }, 
    "web": { 
     "name": "Web" 
    } 
    }; 

dann würde ich tun mit ng-repeat (ich sehe nicht anders herum):

<select ng-model='system' ng-repeat='(key, values) in systems'> 
     <option ng-repeat='(k,v) in values' ng-bind='v.name'></option> 
    </select> 

Selected Value = {{system}} 

Ich hoffe, es hilft :)