Ich habe eine Tabelle (die mit den Daten gefüllt ist, die vom Back-End mit ng-repeat empfangen werden.) Jede der Zeilen hat ein Kontrollkästchen und Wenn das Kontrollkästchen aktiviert ist (mehrere), möchte ich eine Anfrage an den Server senden, um die Zeilen zu löschen. Dazu möchte ich mein Kontrollkästchen an ein eindeutiges Feld in meiner Tabelle binden, bekomme aber nicht die richtige Syntax. Ich habe versucht, die folgenden Optionen, die ich in SO gelesen, aber nichts scheint zu funktionieren.Binden eines eindeutigen Werts aus einer Tabelle an das ng-Modell eines Kontrollkästchens
<input type="checkbox" ng-model="demo.Custid" >//this replaced the value in the table with true or false.
<input type="checkbox" ng-model="formData.checkboxes[demo.Custid]" >//this gave me values in the below format {"12500":true,"125001":false}
Gibt es trotzdem i den Wert der Kunden-ID (in diesem Fall) direkt gebunden an das ng-Modell eindeutig bekommen? Ich mag diese Werte erhalten und eine Anfrage an den Server zu senden, um die Daten zu löschen aus der Tabelle für den entsprechenden Kunden.
.controller('Controller1',function($scope,$rootScope,$routeParams){
$scope.name = 'Controller1';
$scope.params = $routeParams;
$scope.formData = {
checkboxes: {}
};
$scope.demos = [
{ 'Account':'abc.com',
'Custid': 125000,
},
{'Account':'abc.com',
'Custid': 125001, },
{ 'Account':'abc.com',
'Custid': 125002,}
]
})
Ich bin neu zu eckigen js und jede Hilfe/Zeiger wäre wirklich hilfreich.
Vielen Dank für die Antwort Robby.Ich habe versucht Ihre Methode. Es ist perfekt, außer dass, wenn der Benutzer auf das Kontrollkästchen klickt und dann deaktivieren, wird der Wert immer noch der Liste hinzugefügt, die gelöscht werden soll. – Batman
Eine Möglichkeit besteht darin, das Ereignis so zu übergeben, dass es in Ihrem HTML-Code ng-click = "addToList ($ event, demo.Custid") und in Ihrer Funktionsdefinition $ scope.addToList = function ($ event, id). Überprüfen Sie dann, ob $ event.target.checked wahr ist, und fügen Sie es dem Array hinzu, wenn es im Array falsch gesucht und entfernt wird. Siehe [link] (http://stackoverflow.com/questions/9792927/javascript-array-search-and-remove-string). Natürlich sollte die Funktion wahrscheinlich stattdessen in updateList umbenannt werden. Wenn dies Ihre Fragen beantwortet, markieren Sie bitte meine Antwort als akzeptierte Antwort. – RobbyD
Vielen Dank Robby.Ich habe es gerade heute ausprobiert und es funktioniert perfekt :) – Batman