2016-06-26 6 views
2

データベースからテーブル内の項目をリストするコードがあります。クリック機能は、セルを緑と赤の間で切り替えます。フィールドが選択されているかどうかをAngularJSで判断する方法

<tr ng-repeat="team in Pool"> 
    <td ng-class="{'btn-danger': namestarted[$index], 
       'btn-success': !namestarted[$index]}" 
     ng-click="changeColor(team.chrTeamName, $index)">{{ team.chrTeamName }}</td> 
    <td>{{ team.intSeed }}</td> 
    <td ng-class="{'btn-danger': divstarted[$index], 
       'btn-success': !divstarted[$index]}" 
     ng-click="changeColor(team.chrDivision, $index)">{{ team.chrDivision }}</td> 
</tr> 

コントローラー:

$scope.namestarted = []; 
$scope.divstarted = []; 
$scope.changeColor= function (status, index) { 
    if(status == "Name"){ 
    //How to know if the 'Name" is Selected or NotSelected??? 
    $scope.namestarted [index] = !$scope.namestarted [index];} 
    else 
    $scope.divstarted [index] = !$scope.divstarted [index]; 
} 

私は「名前」や「課」をクリックすると今、私はそれが選択またはNotSelected(アクティブまたはない)されているかどうかを知る必要がありますが?あなたは、次のplukerリンクで見ることができ

+1

パス 'team'を与えますstattus –

+0

現在の特定の問題または質問は何ですか?あなたはいくつかのコードを示していますが、動作しているかしていないか、何らかのエラーが発生しているかについての手がかりは与えられていません。 [ask] – charlietfl

+0

チャーリーを参照してください:コードは素晴らしいですが、ChangeColor()をクリックすると、ステータスが選択されているかどうかを確認する必要がありますか? – Kushi

答えて

0

...それはチェックするために `changeColor()`関数にあなたに良いアイデア

https://plnkr.co/edit/9GbNn2RTSsdeiKZZjt0T?p=preview

$scope.setSelected = function(idSelectedVote) { 
    $scope.idSelectedVote = idSelectedVote; 
} 

<ul ng-repeat="vote in votes" ng-click="setSelected(vote.id)" ng-class="{selected : vote.id === idSelectedVote}"> 
     <li class="created"> 
      {{vote.created|date}} 
     </li> 
     <li class="ip"> 
      {{vote.ip}} 
     </li> 
     <li class="status"> 
      {{vote.status}} 
     </li> 
    </ul> 
関連する問題