2015-06-22 67 views
0

我已經通過創建一個下拉列表:下拉列表HOWTO已經默認選擇具有角

<li> 
    <a href="#" 
    ng-click="check(default)">defaul_label</a> 
</li> 

和簡單的造型,因此落下好,所以我的所有項目環通的罰款。

沒有使用選擇字段,我怎麼能指定什麼鏈接將被選中顯示爲默認選定的項目?

+0

你可以NG-秀= 「isSelected」,類似的東西 – ajmajmajma

+0

只是要補充的 - 這將取決於你如何讓您的自定義下拉菜單設置完成。像你有隱藏所有不是所選值的CSS,或者你有一個自定義數據屬性來定義值或東西。 – ajmajmajma

回答

0

您可以使用ng-class指令在所選項目上設置「激活」類。在您的ng-click中,您可以使用ng-repeat指令中的$index值來設置活動索引。

HTML

<li ng-repeat="item in items" ng-class="{active:activeIndex === $index}"> 
    <a href="" ng-click="setActiveIndex($index)">{{item}}</a> 
</li> 

JS

app.controller('MainCtrl', function($scope) { 
    $scope.activeIndex = 0; 
    $scope.items = [ 
    "One", 
    "Two", 
    "Three", 
    "Four" 
    ]; 

    $scope.setActiveIndex = function(idx) { 
    $scope.activeIndex = idx; 
    }; 
}); 

Here is a codepen

+0

我還需要傳遞我的默認函數check(),我將如何實現這些?因爲我只需要調用一個ng-click = check() – Poiro

+0

你可以將它合併到你的$ .scope.setActiveIndex()函數中,在Coreys現有的功能下,只需調用內部的check(),就像你在ng -Click = 「校驗()」 –