在 Angular 中,如何在选择时将 <option> 文本设为粗体?

In Angular, how do you make the <option> text bold on selection?

例如:

我的下拉菜单有一些选项,例如:

默认情况下,最上面的选项是 "Choose your country"。 我的问题是,在 selection- 如果我选择印度。 Select 应该以粗体显示 "India" ,如果我返回 select "Choose your country" 。 Select 应该将 "Choose your country" 显示为文本(不是粗体)有人有什么建议吗?

您可以使用 ng-class 执行此操作。

<div ng-controller="MyCtrl">
 <select ng-model="selectedVal" ng-class="{'bold':selectedVal!='Choose'}">
    <option value="Choose">Choose</option> 
    <option value="Grandvalira">Grandvalira</option> 
    <option value="Vallnord">--Vallnord</option> 

 </select>
</div>

Working Demo

下面我输入了 javascript 和 angularjs 来更改默认值的样式和 select 在 select 框中编辑的值

$("#choice").change(function () {
    if($(this).val() == "0") $(this).addClass("empty");
    else $(this).removeClass("empty")
});

$("#choice").change();

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
   $scope.selected_account_type = function () {
  var myEl = angular.element( document.querySelector( '#choice1' ) );
  if($scope.selectedservice == "0" ){
     myEl.addClass('empty');
  }
  else{
    myEl.removeClass('empty');
  }
};
});
#choice option { color: black; }
.empty { color: gray; font-weight: bold; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<select id="choice">
    <option value="0" selected="selected">Choose...</option>
    <option value="1">Something</option>
    <option value="2">Something else</option>
    <option value="3">Another choice</option>
</select>

<select ng-app="myApp" id="choice1" ng-model="selectedservice" ng-change="selected_account_type(selectedservice)" ng-controller="myCtrl">
    <option value="0" selected="selected">Choose...</option>
    <option value="1">Something</option>
    <option value="2">Something else</option>
    <option value="3">Another choice</option>
</select>