Joomla 5 Notice

We are pleased to announce that as of January 29, 2024, all of our Joomla extensions are compatible with Joomla 5.

For all who are still updateing from Joomla 3 to Joomla 4: Joomla 4 Migration instructions are available here:

There is now a separate Documentation for Visforms for Joomla 4 and for Visforms for Joomla 5!

Forum

Visforms Subscription user can ask questions in our forum. Please log in with the relevant user first.
Everybody can access the forum for reading.

Please only ask 1 question per topic.

Important information for almost every question:
V1: Which Visforms version is running?
V2: Which Joomla version is running?
V3: Which PHP version is running?

Abbrechen Button für Formularansichten (Eingabemaske)

More
6 months 2 weeks ago - 6 months 2 weeks ago #10398 by MaliRaj
In den Edit-Ansichten existiert ein Abbrechen-Button. Ist das auch für die Formular-Ansicht machbar?

Falls man versehentlich auf das Formular gekommen ist, oder ganz bewusst abbrechen will und auf die Ausgangsseite zurück möchte, wäre ein solcher Button hilfreich.
Im Moment löse ich das (nicht so ganz userfreundlich) durch ein externes Fenster, in dem sich das Formular öffnet.

Freundliche Grüße aus PM
Heinz
(Joomla 5.1.2 / Visforms+Subscription 5.12 / PHP 8.2)
Last edit: 6 months 2 weeks ago by MaliRaj.

More
6 months 2 weeks ago #10403 by Administrator AV
Replied by Administrator AV on topic Abbrechen Button für Formularansichten (Eingabemaske)
Hallo Heinz,

das klingt alles ganz einfach, aber wirklich sauber 'zurück' zu kommen ist alles andere als trivial.
Ich habe mich damit in der Vergangenheit bereits befasst, deshalb weiß ich, dass es ganz schnell Situationen gibt, in denen gar nicht mehr klar ist, wo man eigentlich her gekommen ist, bzw. ein Zurück einfach gar nicht geht (z.B. wenn du ein Formular aus einem Link in einer E-Mail aus aufrufst).

Wenn wir das als ein allgemeines Feature in Visforms implementieren, dann ist die Erwartung, dass das 'einfach immer funktioniert' groß und die können wir nicht erfüllen.

Andererseits ist es in vielen konkreten Fällen letztlich aber ganz einfach zurück zu kommen.
Im Prinzip liefert dir ja schon der 'einen Schritt zurück Button' des Browsers, also die Browser History, was du willst.

Visforms bietet dir ja jede Menge Möglichkeiten eigenes HTML überall im Formular einzufügen.
Eine Variante wie du dieses Feature in einem konkreten Fall implementieren kannst, ist dass du mit Javascript mit Hilfe der Frontend Webassets in Visforms einen Button einfügst und auf den Button ein Klick Event legen, dass die Browser History nutzt um einen Schritt zurück zu gehen.

Herzliche Grüße,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).

More
6 months 2 weeks ago #10405 by MaliRaj

 mit Javascript mit Hilfe der Frontend Webassets in Visforms einen Button einfügen und auf den Button ein Klick Event legen, dass die Browser History nutzt um einen Schritt zurück zu gehen

Das ist doch eine super Lösung! Vielen Dank! Muss ich nur noch umsetzen. 

Freundliche Grüße aus PM
Heinz
(Joomla 5.1.2 / Visforms+Subscription 5.12 / PHP 8.2)

More
6 months 2 weeks ago #10406 by Administrator AV
Replied by Administrator AV on topic Abbrechen Button für Formularansichten (Eingabemaske)
Hallo Heinz,
genau, das finde ich auch.
Es gibt einfach Dinge, die man nicht als allgemeines Feature anbieten kann.
Aber Visforms bietet wirklich tolle Tools, dass man solche Dinge, wenn Sie auf eigenen Webseite sinnvoll sind, dann trotzdem individuell umsetzen kann.
Herzliche Grüße und einen schönen Feiertag morgen,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
The following user(s) said Thank You: MaliRaj

More
6 months 1 week ago - 6 months 1 week ago #10408 by MaliRaj
Auch hier wieder herzlichen Dank für die Hintergrundinfos. Dadurch konnte ich ein Script erstellen, das einen Abbrechen-Button mit unterschiedlichen Funktionen, nämlich von der jeweiligen Situation abhängig, erzeugt. Dazu werte ich den Browserverlauf aus. Ist dieser leer (E-Mail-Link, "in neuem Fenster öffnen" usw.), wird das aktuelle Fenster mit Klick auf den Button "Abbrechen" einfach wieder geschlossen. Ist aber ein Browserverlauf vorhanden, wird mit Klick auf den Button "Abbrechen" die vorhergehende letzte Seite aufgerufen. Diesen Button füge ich direkt vor den 'Submit'-Button des Formulars ein. Das funktioniert zuverlässig mit allen von mir getesteten Browsern. Hier der Code für 'Formular' in den Frontend Webassets:
Code:
jQuery(document).ready(function() {     console.log('FEWA script loaded');          // Erstelle einen Abbrechen/Schließen Button     var backButton = document.createElement("button");         backButton.className = "btn btn-secondary col-auto";     backButton.innerHTML = "Abbrechen";     if (window.history.length === 1) {         // console.log("Der Browserverlauf existiert nicht:");         // Hinzufügen eines Event Listeners, um beim Klicken auf den Button das aktuelle Fenster zu schließen         backButton.addEventListener("click", function() {             window.close();         });          } else {         // console.log("Der Browserverlauf existiert:");         // Hinzufügen eines Event Listeners, um beim Klicken auf den Button die letzte Seite des Browserverlaufs aufzurufen         backButton.addEventListener("click", function() {             window.history.back();         });     }     // Finde das bereits vorhandene Input-Element vom Typ 'submit'     var submitButton = document.querySelector("input[type='submit']");     // Füge den Abbrechen-Button vor dem vorhandenen Submit-Button ein     submitButton.parentNode.insertBefore(backButton, submitButton); });
Nachtrag:
Scheinbar wird mit 
Code:
window.close();
aber trotzdem das Formular validiert und abgesendet (falls Validierung erfolgreich). Ich müsste also die Formularbearbeitung noch zusätzlich abbrechen. Wie kann ich das mit JavaScript erreichen? Auf PHP-Ebene ist mir das klar.
Oder liegt dieses ungewollte Verhalten nur daran, dass ich den Button falsch platziert habe? 

Freundliche Grüße aus PM
Heinz
(Joomla 5.1.2 / Visforms+Subscription 5.12 / PHP 8.2)
Last edit: 6 months 1 week ago by MaliRaj. Reason: Nachtrag

More
6 months 1 week ago #10409 by Administrator AV
Replied by Administrator AV on topic Abbrechen Button für Formularansichten (Eingabemaske)
Hallo Heinz,
Javascript ist echt anders als php.
In Javascipt Bubbled ein Event im Dom nach oben, wenn dies nicht explizit verhindert wird.
Beim Bubblen trifft es dann auf das form Element und dort wird ein bubblendes Click Event dann als Submit interpertiert.

Du musst vermutlich in deinem Click Event Handler noch ein  e.preventDefault(); und ein return false; einbauen.
Du brauchst beides.

Herzliche Grüße,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
The following user(s) said Thank You: MaliRaj

Moderators: Administrator AVAdministrator IV
Powered by Kunena Forum