Hallo Matthias,

entschuldige die späte Antwort.

Das Problem mit jsPosition sollte sich schnell lösen lassen. Die Option wird im Code an der falschen Stelle verarbeitet.

Ich lege mir mal ein Testformular an und versuche das zu reproduzieren.

Ich habe mir hier ein Ticket angelegt, in dem ich meine Erkenntnisse posten werde: http://forge.typo3.org/issues/44959

Viele Grüße,
Reinhard

Am 25.01.2013 20:43, schrieb Matthias Eberlein:
Hallo Reinhard,
erst einmal Vielen Dank für Deine Mühe und Antwort auf mein
Anliegen(problem).

Nun ich habe jetzt erst einmal auf die neuste svn Revision von Heute
einen Update gemacht und wie du beschrieben den Eintrag im Bugtracker
44387 angeschaut und diesen patch angewandt.
Jedoch tut sich keine Änderung am Problem. Ich habe für die 2 Steps
jeweils separate ID's vergeben und zwar so:

    1.formID = online-booking-form-step1

    2.formID = online-booking-form-step2

Und das im Globalen Setup bereich.
HTML Template Form

###master_multipart-form-start_online-booking-form-step1###
###master_multipart-form-start_online-booking-form-step2###

AjaxSubmit habe ich mal auf 0 gesetzt. Nun nach clear chache kann ich
folgendes im source sehen. Trotzt jsPosition = footer wird das Jquery
script in den header geschrieben. Da all meine scripts incl. Jquery im
footer sitzen kann natürlich kein ajax validieren. Wenn ich nun das form
ausfülle (zum test habe ich in jedem step nur ein feld) step-1 schau in
source Jquery für step-1 ist vorhanden. -> next step-2 schaue in source
= jQuery für beide steps vorhanden. Also funktioniert es wie Du schon
sagtest. Nur bei mir nicht, da meine jQuery halt im footer sitzt. Gut,
Aktiviere ich nun ajaxSubmit = 1 und schau in den Source sitzt das
jQuery Validierungs Script wieder schön unten im footer bereich wo ich
es gerne hätte.

Also Schlussvolgerung ist nun, dass wenn  KEIN AjaxSubmit
         ajaxSubmit = 0
         jsPosition = footer


dann greift auch nicht jsPosition = footer Nicht.

Mit AjaxSubmit

         ajaxSubmit = 1
         jsPosition = footer

greift die jsPosition = footer funktion und der 1. Step wird mit ajax
Validiert -> go to next Step geht auch ohne page reload also auch ajax.
Nur vom 2. Step fehlt die Validierungs Jquery.

Ein Versuch für jeden Step die Ajax einzubinden scheitert mit kein ajax
im source.

1.ajax { }
2.ajax { }

Wird zwar zu jeden Step zugewiesen (TYPOscript Object Browser) aber im
FE nicht ausgegeben.

So nun stehe ich auf dem schlauch... Denn wenn ich das so als Multistep
form Verwenden möchte muss ajax submit & Validieren funktionieren.
Ansonsten bleibt mir dann nichts anderes übrig erst einmal nur 1-steps
forms zu verwenden und das halt für 3 versionen in 3 x jQuery Tabs zum
auswählen.

Gruß
Matthias





Am 25.01.2013 08:03, schrieb Reinhard Führicht:
Hallo Matthias,

es ist möglich Multistep-Formulare per AJAX zu validieren.
Ich habe das gerade getestet und es funktioniert wunderbar.

Es gibt ein Problem mit ajaxSubmit i nder aktuellen Version im TER. Hier
der Eintrag im Bugtracker: http://forge.typo3.org/issues/44387

Ohne ajaxSubmit funktioniert es aber auf jeden Fall. Möglicherweise
liegt es an einer fehlenden formID im zweiten Step?

Viele Grüße,
Reinhard

Am 24.01.2013 19:24, schrieb Matthias Eberlein:
Hallo Liste,
ich habe mich einmal an der Ext. formhandler herangewagt und versuche
ein 2 Step Formular zusammen zustellen. Das ganze Form funktioniert auch
wenn man keine Ajax Validierung verwendet. Sobald ich auf ajax umstelle
wir nur der erste step min ajax validiert, der 2. bekommt keine ajax
validierung. Ein blick im Quellcode, dort fällt auf das nur für den
ersten step die jQuery Validierung im Quellcode vorhanden ist nich für
den 2. step. Somit kommt auch keine akax validierung für step 2
zustande.

Die ajax aktivierung  und die finishers habe ich sozusagen global im ts
und die preProcessors, validators der 2 steps jeweils separat in
1 {} 2 {}. Habe mir erlaubt einmal die grobe script strucktur hier zu
posten. Kann mir jemand sagen wo der fehler dabei ligt oder ist es nicht
möglich multistep forms mit ajax zu validieren und zu submit?

Für einen Tipp wäre ich euch sehr Dankbar
Gruß
Matthias Eberlein

ps. wenn ich die ajax aktievierung in die einzelenen steps mit aufnehme
und nicht global wird ajax nicht aktiviert.

plugin.Tx_Formhandler.settings.predef.multiform {

name =
formID =
formValuesPrefix =

langFile.1
langFile.1.value

1.templateFile
1.templateFile.value
2.templateFile
2.templateFile.value

masterTemplateFile
masterTemplateFile.value

isErrorMarker {
}
singleErrorTemplate {
}

finishers {
}

   ajax {
     class = AjaxHandler_JQuery
     config {
         ajaxSubmit = 1
         jsPosition = footer
     notOk =
     ok =
     loading =
     autoDisableSubmitButton =
1 {
  markers {
...
}

preProcessors {
...
}
validators {
...
}
}


2 {
preProcessors {
...
}
validators {
...
}

}
}





--
--------------------------------
http://www.typo3-formhandler.com
--------------------------------
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an