2016-04-04 14 views
1

Ich möchte ein Auswahlfeld bereitstellen, in dem die Einträge abhängig von den Daten unterschiedlich eingefärbt werden. Hier ist ein Beispiel HTML:Angularjs auswählen mit Einträgen in verschiedenen Farben

<select class="form-control" ng-model="New_Request.SN" id="SN" style="width:140px"> 
    <option ng-repeat="One_Board in Child_Boards" value="{{One_Board.SN}}"> 
     <div ng-style="({{One_Board.Status}} == 'Y' ? font-color:black : font-color:red)">{{One_Board.SN}}</div> 
    </option> 
</select> 

So hat jeder Eintrag die Struktur {"SN":"<value>","Status":"<status>"}. Jeder Eintrag, dessen Status "Y" ist, wird in Schwarz angezeigt und jeder Eintrag mit einem anderen Status als "Y" wird rot angezeigt.

Ich kann nicht herausfinden, was die richtige Syntax sein sollte.

Jeder Vorschlag wird geschätzt.

+0

Nicht möglich mit nativer Auswahlbox. Verwenden Sie benutzerdefinierte. – dfsq

Antwort

1

Bitte versuchen Sie dies:

<select class="form-control" ng-model="New_Request.SN" id="SN" style="width:140px"> 
    <option ng-repeat="One_Board in Child_Boards" value="{{One_Board.SN}}" ng-class="{redcolor: One_Board.Status != 'Y'}"> 
     {{One_Board.SN}} 
    </option> 
</select> 

Und in Ihrem CSS:

option { 
    color: black; 
} 
.redcolor { 
    color: red; 
} 

Aber vielleicht font-color zu color allein ändern, werden auch den Trick tun ;-)

+0

JA !!!! Tolle Lösung !!! Danke @JanP !!! – FDavidov

+0

Froh, es hat funktioniert! – JanP

Verwandte Themen