私はパーティーに少し遅れていることを知っていますが、ディレクティブを使用せずに純粋なCSSでこれを解決したい人のために、次のようなcssクラスを作成できます。
select.blueSelect option[value="false"]{
color:#01aac7;
}
このcssルールは次のように述べています。クラス「blueSelect」を持つすべての「select」内のタグ名「option」でvalue=falseのすべての要素を検索し、テキストの色を#01aac7にします。(青の色合い)
あなたの場合、HTMLは次のようになります。
<select class="form-control blueSelect" name="persons" id="persons1"
ng-options="person as person.name for person in $ctrl.persons track by person.Eligible"
ng-model="$ctrl.selectedPerson" required>
<option disabled selected value="">Default value</option>
</select>
ng-options内の追跡は、オプションを追跡する対象、または各オプションの「値」フィールドを保持するものです。プロジェクトのニーズによっては、要件に応じてこれを機能させるために微調整が必要になる場合があることに注意してください。
ただし、[適格]フィールドに同じ値のオプションが複数ある場合は、正しく機能しません。したがって、これを機能させるために、追跡する複合式を作成します。これにより、各オプションで追跡する一意の値を設定できます。この場合、NameフィールドとEligibleフィールドの両方を組み合わせます
これで、htmlは次のようになります
<select class="form-control blueSelect" name="persons" id="persons2"
ng-options="person as person.name for person in $ctrl.persons track by (person.name + person.Eligible)"
ng-model="$ctrl.selectedPerson" required>
<option disabled selected value="">Default value</option>
</select>
そして私たちのcss:
select.blueSelect option[value*="False"]{
color:#01aac7;
}
値の横にある*に注意してください。これは正規表現であり、オプション要素の値フィールドのどこかに「False」という単語を見つけることを意味します。
クイック編集
ng-options式の「disablewhen」を使用して、Eligible=Falseでオプションを無効にすることもできます。次に例を示します。
trackexprによる配列トラックの値を無効にする場合はラベルを無効にする
私はあなたが見つけるためにあなたの場合にそれを使用する方法を残します;-)
これは、単純なcssの変更で機能します。より複雑なものでは、ディレクティブまたは他のメソッドが必要になる場合があります。クロームでテスト済み。
これが誰かの助けになることを願っています。:-)