2016-10-20 10 views
0

私はすべての状態の選手をその選手の数で作成したいのですが、クリックされた丸薬をアクティブにしたいと思います。だから、次のようにこの問題についての私のunsuccesful試みがある:Bootstrap pills active classをAngularで実装する方法

<ul class="nav nav-pills"> 
    <li ng-class="{ active:tab.isSet(x.name) }" ng-repeat="x in states"> 
     <a href ng-click="tab.setTab(x.name)">{{x.name}} <span class="badge">{{x.elector}}</span></a> 
    </li> 
</ul> 

そして、私のコントローラの内部で、私はそのことについては、コードのこの部分を持っている:

$scope.tab = "Alabama"; 

$scope.isSet = function(checkTab) { 
    return $scope.tab === checkTab; 
}; 

$scope.setTab = function(activeTab) { 
    $scope.tab = activeTab; 
}; 

ところで、最初に私がしようとしました彼らの指数を比較することによって薬を有効にするが、それは助けにならなかった。あなたがインデックスを使ってこれを行う方法で私を助けることができればさらに良いでしょう。私はすでにこれに投稿された解決策がある場合は謝罪しますが、私はそれを見つけることができませんでした。

ありがとうございます!

答えて

1
<ul class="nav nav-pills"> 
    <li ng-class="{ 'active':tab.isSet(x.name) }" ng-repeat="x in states"> 
     <a href ng-click="tab.setTab(x.name)">{{x.name}} <span class="badge">{{x.elector}}</span></a> 
    </li> 
</ul> 

注私はそれを見つけたアクティブ

+0

これは機能しませんでした..まだ同じ出力 –

1

を囲む引用符は、私が "tab.isset(...)" の "タブ" のを削除したはずです。

+0

したがって、スコープは常にビューに表示されます。 JSでは、スコープが暗示されているので、あなたは 'isSet()'が必要なhtmlの 'scope.isSet()'が必要です – joncodo

関連する問題