Re: [TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
Hallo Matthias, es ist schwer für mich aus deinen Fehlerbeschreibungen schlau zu werden. Am einfachsten wäre es wohl, wenn ich mir das Formular online ansehen könnte. Bitte schreib mir per E-Mail und wir gehen das nächste Woche gemeinsam durch. Viele Grüße, Reinhard Am 31.01.2013 03:41, schrieb Matthias Eberlein: Hallo Reinhard, entschuldigung Angenommen :-) Ganz Ehrlich, ich bin Dankbar Überhaupt Gratis Support sozusagen zu bekommen. Egal ob es sich um Formhandler geht oder andere Probleme wo man nicht mehr weiter weiß. OK. Nun bin ich schon seit einiger Zeit bei Diesem Multistep und anderen Forms und es scheint Fast zu Laufen. Aber nur Fast. Irgendwie will Die Ajax Validierung nach step-1 nicht funktionieren. Das ist jetzt aber nicht das große Problem. Ein Problem macht mir Kopfzerbrechen, und zwar folgendes. Um es besser zu veranschaulichen mal ein teil des scripts welches du ja kennst. aus dem basis für multisteps mit conditions ganz unten angehängt Wie man sehen kann gibt es zu Auswahl 3 Options. Die ersten beiden Optionen gehen bis Step-5, die Option 3 Special besitzt jedoch nur 2 steps. Wählt man nun Diese Option - step 2 geht - step 3 geht - Submit geht nicht. Er versuch immer weite nach step 4 welches nicht Existiert. Kein Error Template missing oder der gleichen. Nur kein Submit möglich. Alle anderen Optionen gehen alle ihre Steps sauber durch. Und das mit AJAX ;-) Template von ###master_multipart-form-start auf ###master_form-start_ geändert. Das andere welches ich nicht in den Griff bekommen ist das auf der Seite (startpage) Dieses Multistep Form enthalten ist und im Footer Bereich habe ich ein Newsletter Subscribe mit Name ,email Und Private Policity Checkbox incl Submit-ok Template. Alles required fields. Nach submit ist wird die erste Form (multistepform) Inaktiv. Im Master Template sind für die submit Buttons KEINE ###validation-status### enthalten. autoDisableSubmitButton = 0 Trotzdem bleib der Button disabled=disabled Das gleiche Problem ist Umgekehrt. Wenn erst Die Multiform Submit und danach ein Newsletter gewählt wird ist Newsletter Inaktiv. input type=submit name=newslettersubmit[step-2-next] class=button submit value=Send id=newslettersubmit-submit disabled=disabled/ Jede Form hat seine submitButtonSelector. wie z.B Newslettersubmit submitButtonSelector = #formhandler_newsletter_form #NewsletterSubmit INPUT[type=\'submit\'] Jede form hat Ihre ID jquery alias habe ich auf $ für alle forms Weiters Problem, Selectbox Validierung Folgendes Szenario. Drei Optionen (vier) 0 Bitte Wählen Sie 1 Option 1 2 Option 2 3 Option 3 Geht man mit TAB die Form durch und wählt nichts mit der Maus aus der selectbox aus wird das Bitte Wählen Sie Validiert und auf OK gesetzt. Also hilft nur option value=/option für Position 0 OK. Damit kann man aber Leben, denn es gibt ja ein Label zur Selectbox. Nur meine Frage, ist es nicht möglich die genaue Position zu Validieren? poss.0=notok poss.1=ok usw In der Doku habe ich nichts gefunden. Letztes Problem, ich kann nich von einem Step wieder zurrück zu dem vorherigen step. ###submit_step_[1]### Zeigt mit im source code den validen step zurück an aber es geht nur vor. allowStepJumps = 1 Jetzt fällt mir grade ein ich habe das im ajax part??? OK, reich für heute. soll nicht wieder 7Uhr morgens werden. Wäre Dankbar für den ein oder anderen Hinweis Gruß Matthias if { 1 { conditions.OR1.AND1 = position = Examples1 isTrue { 2 { templateSuffix = _example } 3 { templateSuffix = _example1 } 4 { templateSuffix = _example3 } 5 { templateSuffix = _example4 } } } 2 { conditions.OR1.AND1 = position = Examples2 isTrue { 2 { templateSuffix = _example } 3 { templateSuffix = _example1 } 4 { templateSuffix = _example3 } 5 { templateSuffix = _example4 } } } 3 { conditions.OR1.AND1 = position = Special isTrue { 2 { templateSuffix = _special1 } 3 { templateSuffix = _special2 } } } } Am 30.01.2013 10:55, schrieb Reinhard Führicht: Hallo Matthias, das Problem ist folgendes: Du hast 2 unterschiedliche formIDs für die Steps. Durch den AJAX-Submit wird nicht die ganze Seite neu geladen, sondern nur das Formular. Dadurch kann Formhandler kein neues JavaScript mit der neuen formID generieren. Lösung: Verwende die gleiche
Re: [TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
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
Re: [TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
Hallo Reinhard, entschuldigung Angenommen :-) Ganz Ehrlich, ich bin Dankbar Überhaupt Gratis Support sozusagen zu bekommen. Egal ob es sich um Formhandler geht oder andere Probleme wo man nicht mehr weiter weiß. OK. Nun bin ich schon seit einiger Zeit bei Diesem Multistep und anderen Forms und es scheint Fast zu Laufen. Aber nur Fast. Irgendwie will Die Ajax Validierung nach step-1 nicht funktionieren. Das ist jetzt aber nicht das große Problem. Ein Problem macht mir Kopfzerbrechen, und zwar folgendes. Um es besser zu veranschaulichen mal ein teil des scripts welches du ja kennst. aus dem basis für multisteps mit conditions ganz unten angehängt Wie man sehen kann gibt es zu Auswahl 3 Options. Die ersten beiden Optionen gehen bis Step-5, die Option 3 Special besitzt jedoch nur 2 steps. Wählt man nun Diese Option - step 2 geht - step 3 geht - Submit geht nicht. Er versuch immer weite nach step 4 welches nicht Existiert. Kein Error Template missing oder der gleichen. Nur kein Submit möglich. Alle anderen Optionen gehen alle ihre Steps sauber durch. Und das mit AJAX ;-) Template von ###master_multipart-form-start auf ###master_form-start_ geändert. Das andere welches ich nicht in den Griff bekommen ist das auf der Seite (startpage) Dieses Multistep Form enthalten ist und im Footer Bereich habe ich ein Newsletter Subscribe mit Name ,email Und Private Policity Checkbox incl Submit-ok Template. Alles required fields. Nach submit ist wird die erste Form (multistepform) Inaktiv. Im Master Template sind für die submit Buttons KEINE ###validation-status### enthalten. autoDisableSubmitButton = 0 Trotzdem bleib der Button disabled=disabled Das gleiche Problem ist Umgekehrt. Wenn erst Die Multiform Submit und danach ein Newsletter gewählt wird ist Newsletter Inaktiv. input type=submit name=newslettersubmit[step-2-next] class=button submit value=Send id=newslettersubmit-submit disabled=disabled/ Jede Form hat seine submitButtonSelector. wie z.B Newslettersubmit submitButtonSelector = #formhandler_newsletter_form #NewsletterSubmit INPUT[type=\'submit\'] Jede form hat Ihre ID jquery alias habe ich auf $ für alle forms Weiters Problem, Selectbox Validierung Folgendes Szenario. Drei Optionen (vier) 0 Bitte Wählen Sie 1 Option 1 2 Option 2 3 Option 3 Geht man mit TAB die Form durch und wählt nichts mit der Maus aus der selectbox aus wird das Bitte Wählen Sie Validiert und auf OK gesetzt. Also hilft nur option value=/option für Position 0 OK. Damit kann man aber Leben, denn es gibt ja ein Label zur Selectbox. Nur meine Frage, ist es nicht möglich die genaue Position zu Validieren? poss.0=notok poss.1=ok usw In der Doku habe ich nichts gefunden. Letztes Problem, ich kann nich von einem Step wieder zurrück zu dem vorherigen step. ###submit_step_[1]### Zeigt mit im source code den validen step zurück an aber es geht nur vor. allowStepJumps = 1 Jetzt fällt mir grade ein ich habe das im ajax part??? OK, reich für heute. soll nicht wieder 7Uhr morgens werden. Wäre Dankbar für den ein oder anderen Hinweis Gruß Matthias if { 1 { conditions.OR1.AND1 = position = Examples1 isTrue { 2 { templateSuffix = _example } 3 { templateSuffix = _example1 } 4 { templateSuffix = _example3 } 5 { templateSuffix = _example4 } } } 2 { conditions.OR1.AND1 = position = Examples2 isTrue { 2 { templateSuffix = _example } 3 { templateSuffix = _example1 } 4 { templateSuffix = _example3 } 5 { templateSuffix = _example4 } } } 3 { conditions.OR1.AND1 = position = Special isTrue { 2 { templateSuffix = _special1 } 3 { templateSuffix = _special2 } } } }
Re: [TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
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
Re: [TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
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 { ... } } } ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
[TYPO3-german] Formhandler - 2 step form ajax Valdierung submit/next geht nur in step 1
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 { ... } } } ___ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german