Zum Inhalt springen

Formhandler MultiStep Formular - Tracking-Code einfügen

Erstellt am 17. März 2011 · 4 Antworten · letzte Antwort am 10. Februar 2012

Tags: Frage

frankm ·

Hallo,

Ich habe ein MultiStep Formular mit Formhandler erstellt, was soweit gut funktioniert.
Mit jeden Schritt soll ein individueller Javascript Tracking-Code vor dem schließenden </body> eingefügt werden.

Ich habs mal in dieser Richtung probiert - funktioniert aber leider nicht:

lib.tracking = TEXT

[globalVar TSFE:formhandler|currentStep = 1]
  lib.tracking.value = javascript für Schritt 1
[GLOBAL]

[globalVar TSFE:formhandler|currentStep = 2]
  lib.tracking.value = javascript für Schritt 2
[GLOBAL]

page.20.subparts.TRACKING < lib.tracking

Kann mir jemand einen Tipp geben?

larsmessmer ·

Wenn es abhängig vom Step sein soll dann würde ich das mit Marker machen:

Im TS

plugin.Tx_Formhandler.settings.predef.deinformular{

markers {
    markerstep1 = TEXT
    markerstep1.value = dein Java Script
}
}

Und im Template
###markerstep1###

frankm ·

Danke, das geht schon in die richtige Richtung. Das Problem ist, dass der Bereich in dem das Javascript eingefügt werden soll außerhalb des Fomhandler Templates liegt. Hier werden die Marker nicht greifen. Das heißt, es müsste die komplette Template-Logik in das Formhandler Template verlagert werden - was vermutlich andere Probleme mit sich bringt...
Aber ich werde es jetzt mal so versuchen.

frankm ·

Ich habe nun die Templates komplett in Formhandler verlegt.
Sieht schon mal gar nicht so schlecht aus - ganz kommt es aber noch nicht hin.
Das javascript soll direct vor dem </body> stehen. Wird aber noch von dem Div "Tx-Formhandler" eingeschlossen.

<body>
  <div class="Tx-Formhandler">
	... HTML-Formular ...
	<script> ... Tracking-Code ... </script>
  </div>
</body>

Hat jemand eine Idee, wie man das DIV entfernen könnte?

ra.​s ·

... ist ja schon was älter der Eintrag, aber ich hatte gerade das gleiche Problem und die Lösung sieht so aus:

plugin.tx_Formhandler.settings.predef.MEINFORMULAR.disableWrapInBaseClass = 1

Vielleicht hilfts ja noch jemandem.

Ralf

😃