So aktivieren oder deaktivieren Sie eine Schaltfläche mit knockout.js

8

Ich möchte eine Schaltfläche mit knockout.js deaktivieren, wenn der Benutzer auf die Schaltfläche klickt und der Server einige Daten verarbeitet. Ich schaue mir das Beispiel in den Knockout-Tutorials an, aber es scheint, dass etwas fehlt.

Ich habe den enable: -Teil in data-bind :

%Vor%

Ich habe im View-Modell ein Observable auf false gesetzt. Der Button ist jedoch auf der Seite aktiviert, wenn die Ansicht initialisiert wird. Also ich denke, es ist ein Datenbindungsproblem.

%Vor%

Ich möchte, dass die Schaltfläche aktiviert wird, bis der Benutzer auf die Schaltfläche zum Senden klickt, und deaktivieren Sie sie dann, bis der Server damit fertig ist.

%Vor%

Wie binden Sie den beobachtbaren Wert enable an die Schaltfläche?

    
Jonathan Kittell 05.03.2015, 14:11
quelle

2 Antworten

5

Sie ersetzen irrtümlicherweise Ihr Observable durch gerade js-Variablen. canSubmit ist eine Observable, also ändern Sie ihren Wert, indem Sie die Funktion aufrufen:

%Vor%

Der Rest ist in Ordnung.

    
Jamiec 05.03.2015, 14:16
quelle
4

Sie aktualisieren Ihren beobachtbaren Wert nicht, Sie ändern den Verweis von self.canSubmit, sodass er auf einen booleschen Wert zeigt.

Ändern Sie Ihre self.submit-Funktion zu:

%Vor%     
Will Jenkins 05.03.2015 14:17
quelle

Tags und Links