2015-09-25 177 views
1

下午所有,我有一個選擇框,我在Angular中創建了一個包含FontAwesome圖標而不是文本的選擇框。你可以在這裏看到,我必須使用ng-bind-html才能顯示unicode值,但現在不起作用的是當選擇框打開時,它不再「自動選擇」當前值。AngularJS選擇 - 自動選擇選項

選擇框

<select ng-model="item.IconCssClass" class="fontawesomeselect"> 
    <option ng-repeat="i in Icons" value="{{i.icon}}" ng-bind-html="i.unicode|html"> </option> 
</select> 

我的CSS:

.fontawesomeselect { 
    font-family: FontAwesome, Lato; 
    width: 40px; 
} 

在指令(或多或少):

scope.Icons = [ 
     { icon: 'fa-phone', unicode: '&#xf095;' }, 
     { icon: 'fa-gbp', unicode: '&#xf154;' }]; 

scope.item = { "IconCssClass": "fa-phone" }; 

選擇選項,沒有自動選擇可言,任何想法,如果我做錯了什麼?

+0

看起來你的'scope.Icons'數組中不存在'fa-lock'。嘗試在那裏添加它或將所選圖標更改爲「fa-phone」或「fa-gbp」。 – csbarnes

+0

好我的壞我選擇了錯誤的項目演示,現在會改變。該項目肯定是存在的。 – NewZeroRiot

回答

1

您打算使用ng-selected directive加載選擇正確的圖標。

<option ng-selected="i.icon === item.IconCssClass" ng-repeat="i in Icons" value="{{i.icon}}" ng-bind-html="i.unicode|html"></option> 
+0

我知道這很簡單!當我回家時,歡呼會嘗試:) – NewZeroRiot

+0

作品一種享受歡呼:) – NewZeroRiot