Wie kann man den Wert eines Eingabeelements mit dem ng-Modell anzeigen?

9

Wenn im Controller eine Variable vorhanden ist, die den Index (beginnend bei 0) der Seite für eine Seitentabelle abbildet:

%Vor%

Frage: Wie kann ich diese pageNumber Variable im HTML anzeigen, aber immer um +1 erhöhen? (da der Index = 0 Seite ist offensichtlich die 1. Seite und sollte daher als Page 1 angezeigt werden)

%Vor%

Auch wenn das Modell aktualisiert wird, sollte sich der Wert in der Eingabe automatisch ändern (wiederum: ebenfalls um +1 erhöht).

    
membersound 10.02.2016, 09:52
quelle

3 Antworten

8

Ich denke, das ist ein Anwendungsfall für $ Formatierer und $ Parser. Sie arbeiten mit der Eigenschaft des Modells, und es muss keine Dummy-Eigenschaft für das Modell erstellt werden. Dokumentation hier . Bitte korrigieren Sie mich, wenn dies nicht der Anwendungsfall für $ formatters und $ parsers ist.

Siehe unten.

HTML-Markup

%Vor%

js

%Vor%     
Naga Sandeep 10.02.2016, 12:11
quelle
7

Ändern Sie in Ihrem Controller das Seitenobjekt wie folgt:

%Vor%

Und dann Ihr Element dazu:

%Vor%

Dies zeigt die Seitennummer plus 1 an, aber belassen Sie die tatsächliche Variable page.pageNumber so, wie sie sein sollte.

Die getterSetter: true -Optionen, die ich hinzugefügt habe, binden das Modell an eine Getter / Setter-Funktion, mit der Sie das Argument - in diesem Fall die eingegebene Seitennummer - übergeben und von dieser Funktion zurückkehren können. Weitere Informationen hierzu finden Sie in der Dokumentation zu ngModel

    
millerbr 10.02.2016 09:54
quelle
2

Sie können versuchen, so etwas zu verwenden.

%Vor%

und dein HTML wird wie

sein %Vor%

check this plunk Plunker

    
Viplock 10.02.2016 10:33
quelle

Tags und Links