Brechen eines Formulars zwischen mehreren Tabs in der Validierung der Winkelbrüche

8

Ich habe eine eckige Form zwischen mehreren Tabs mit eckiger UI-Direktive.

%Vor%

Bitte sehen Sie meinen Plunker .

Wie Sie sehen, funktioniert nur die Eingabe außerhalb von Tabs. Die Validierung anderer Eingaben funktioniert nicht, da TABS Bereiche erstellt. Irgendwelche Ideen, wie man dieses Problem löst?

    
Alexandru Rada 02.07.2013, 08:22
quelle

3 Antworten

36

Aus den ngForm-Anweisungen :

  

In Angular können Formulare verschachtelt werden. Dies bedeutet, dass die äußere Form gültig ist, wenn alle untergeordneten Formulare ebenfalls gültig sind. Browser erlauben jedoch keine Verschachtelung von <form> -Elementen, daher stellt Angular die ngForm -Direktive zur Verfügung, die sich identisch mit form verhält, aber verschachtelt werden kann.

Dies bedeutet, dass Sie Ihr campaignForm -Formular für jede Registerkarte in Unterformulare zerlegen können:

%Vor%

PLUNKER

Dadurch wird der Fall umgangen, bei dem die Anweisung tabs (oder eine andere Direktive, die den isolate-Bereich verwendet) den Bereich Ihres ngFormControllers durchbricht.

    
Stewie 02.07.2013 09:54
quelle
0

Obwohl es alte Post ist, aber ich dachte, es würde jemandem helfen

%Vor%

Ich habe eine verschachtelte Controller in PARAM_1.html und PARAM_2.html mit Formularnamen als hinzugefügt firstForm und secondForm.

Im Controller-Code von firstForm und secondForm habe ich eine Watcher-Funktion wie folgt platziert:

%Vor%

Das obige Stück Code wird in den verschachtelten Controller für firstForm und secondForm platziert. Dieses Stück kann erkennen, ob die Form validiert wurde oder nicht. Es informiert das Hauptformular (myForm).

Mit diesem können Sie die Aktivierung und Deaktivierung oder Schaltflächen auf dem Hauptformular steuern, bis alle Unterformulare erfolgreich validiert sind.

Hinweis: setValidationCount und decrementValidationCount sind zwei Methoden im Hauptcontroller, die das Aktivieren und Deaktivieren von BUTTONS auf dem Hauptformular steuern.

    
user3301213 15.06.2017 07:45
quelle
-1

Dieses genaue Problem ist in der neuesten Datei tabs.js von Github gelöst. Das Problem wurde erst kürzlich gelöst. Ich hatte genau das gleiche Problem und nach dem Herunterladen dieser Datei hat alles funktioniert.

    
Melina 11.07.2013 05:01
quelle