2016-04-12 6 views
0

Also habe ich diese Tabelle mit Auswahlkästchen in jeder Zeile. Das Problem ist, dass wenn ich eine Änderung in einem Auswahlfeld mache, alle von ihnen geändert werden, den gleichen Wert zeigend. Was ich brauche, ist, alle Auswahlkästchen zu lösen, um auf jedem von ihnen verschiedene Auswahlen zu haben.Angular ng-wiederhole mehrere Zeilen Tabelle mit wählen

-Code geht so:

<tr ng-repeat="item in userMappings.items" ng-model="item.mapped"> 
    <td class="col-md-3" ng-model="mappingType.name"> 
    {{item.idsport}}, Game Type {{item.idgametype}}, {{item.name}} (Current limit {{item.value}}) 
    </td>     
    <td class="col-md-3 mapType" style="padding-bottom: 25px; padding-left: 15px" > 
    <h4>Mapping Type: <span style="font-size:0.8em">{{selectedType}}</span> </h4> <br /> 
    <select ng-model="mappingType.name" ng-change="which($index); selectedRow()" ng-options="item.name for item in mappingType"></select> 
    </td> 
</tr> 
+0

Es ist nicht wirklich klar, wie Ihre Daten hier strukturiert sind und das sind wirklich wichtige Informationen, um diese Frage zu beantworten. – Scott

+0

$ scope.mappingType = [{Name: "Sport"}, {Name: "Liga"}, {Name: "No Mapping"}]; Dann habe ich eine Tabelle von etwa 1000 Objekten. Wenn ich eine Auswahl an einer Auswahl mache, werden alle anderen aktualisiert und zeigen denselben Wert ... – kikemx78

Antwort

0

Wenn Sie ng-model verwenden mappingTypes.name zu binden, um es die Eigenschaft auf dem Steuerungsbereich ändern wird, weil das ist, wo es definiert ist. mappingTypes ist nicht Teil von ng-repeat 's Bereich, so dass es durch die Scope-Vererbungskette geht und aktualisiert es dort. Wenn Sie also ein Element auswählen, ist mappingTypes jetzt ein Array mit einer name-Eigenschaft. Alle Ihre Objekte sind an dasselbe Array gebunden, sodass alle denselben Wert haben. Wenn Sie nur ein bestimmtes Element in ng-repeat ändern möchten, sollten Sie etwas wie item.mapping verwenden. Wenn Sie etwas anderes als item ändern, ändert sich der gesamte Bereich des Controllers.

+0

Hallo Scott, wo genau muss ich item.mapping verwenden? – kikemx78

+0

Für Ihre '