2016-06-04 2 views
0

Ich zeige einige Daten mit ng-repeat in meiner HTML-Seite.Hinzufügen und Entfernen von Klasse zu einem Div bei Kontrollkästchen in AngularJs geändert

<div class="list-expense-menu-item" ng-repeat="todo in todos"> 
    <md-checkbox aria-label="Checkbox" ng-model="ch" ng-change="changeClass(ch)" > </md-checkbox> 
    <div class="col-80"> 
    <p class="header">{{todo.note}}</p> 
    </div> 
</div> 

Ich möchte ein class auf die zweite hinzuzufügen div (dh div mit Klasse col-80), wenn das Kontrollkästchen aktiviert ist, und entfernen Sie die class wenn ungeprüft

Controller.js

$scope.ch=false; 
    $scope.changeClass=function(val){ 
     alert(val); 
     if(val){ 
     //add class text-strick 
     }else{ 
      //remove class text-strick 
     } 
     } 

Ich bekomme wahre und falsche Werte in alert, aber ich weiß nicht, wie hinzufügen und entfernen Sie die Klasse, wenn Kontrollkästchen geändert

Antwort

1

Sie müssen das Kontrollkästchen mit dem Todos-Objekt verknüpfen, das in ng-repeat wiederholt wird. Von Ihrer Frage verstehe ich, dass Sie das div neben dem Kontrollkästchen markieren möchten, so dass es mehrere Paare von Kontrollkästchen und div gibt, wird so etwas funktionieren:

+0

Es gibt keine Notwendigkeit für todo. ch == true'., 'todo.ch' selbst wird ein Boolescher Wert sein. –

+0

Einverstanden, aber der Hauptpunkt meiner Antwort war, die Syntax für den Ausdruck der ng-Klasse klar zu machen, Ihr Punkt ist aber definitiv richtig –

Verwandte Themen