So richten Sie eine Checkbox-Bindung in Aurelia ein

7

Ich habe eine Checkbox-Liste, wenn der Benutzer eines der Kontrollkästchen aktiviert eine Funktion in der JS-Datei aufgerufen wird und es ruft wiederum eine Methode dataservice.js, die einen Webapi-Controller aufruft, das alles funktioniert gut und gibt das richtige zurück Daten.

Was passiert, wenn der Prozess abgeschlossen ist, ist, dass das Kontrollkästchen, das die Sequenz ausgelöst hat, nicht aktiviert ist. Ich habe das Ergebnis überprüft, und schoolDistrict.IsChecked für dieses Element ist auf "true" gesetzt, was korrekt ist.

Wie kann ich das Kontrollkästchen aktivieren?

Unten ist der Code, aber ich bin nicht sicher über die check.one-way Bindung

%Vor%

Jede Hilfe würde sehr geschätzt werden.

    
Thunderchild 09.02.2016, 16:19
quelle

1 Antwort

23

Es gibt ein paar Probleme hier:

  • Das Problem ist wahrscheinlich, dass Ihr Code searchSchoolDistrict() die Eigenschaft IsChecked ändert, aber die Bindung one-way nicht auf die Änderung wartet.
  • Während die Interpolation des Wertes funktionieren würde, ist die Verwendung der Bindesyntax wahrscheinlich besser.
  • Die Einrichtung einer change.delegate ist robuster und wird alle Änderungen in der Checkbox abhören, was eine bewährte Methode für Checkboxen ist.
  • Veraltet Stellen Sie sicher, dass Sie den richtigen Bereich für searchSchoolDistrict() ausgewählt haben, da dieser wahrscheinlich in $parent und nicht in schoolDistrict liegt.

Versuchen Sie es stattdessen:

%Vor%     
Matthew James Davis 09.02.2016, 17:51
quelle

Tags und Links