Über AJAX geladenes Schwerkraftformular wird nicht gesendet
Lesezeit: 2 Minuten
laudx
Ich habe ein Schwerkraftformular, das von einer AJAX-Funktion geladen wird. Wenn ich versuche, das Formular abzusenden, erhalte ich aus irgendeinem Grund eine 400 error /wp-admin/admin-ajax.php#gf_3:1
Folgende Anleitungen online habe ich hinzugefügt gravity_form_enqueue_scripts(3, true); zu meinem header.php was das Problem nicht gelöst hat.
Das Formular funktioniert auf der Vorschauseite einwandfrei. Ich habe mehrere Formulare und mehrere Funktionen getestet, aber keines meiner Formulare wird gesendet, wenn sie über AJAX geladen wurden.
Ich verbrachte viele Stunden mit diesem Problem. Ich verwende Gravity Forms 2.5.1
Es stellt sich heraus, dass das `DOMContentLoaded’-Ereignis, das mit dem Formular geladen wird, nicht ausgelöst wurde.
In meiner Funktion, die das Formular aufruft, habe ich das Ereignis manuell ausgelöst und jetzt funktioniert es wie erwartet.
developer.mozilla.org/en-US/docs/Web/API/Document/… — Es wird nur beim anfänglichen HTM-Laden ausgelöst, also hat GF angenommen, dass es ausgelöst wird, wenn dies nicht der Fall ist ( immer ) … Ich nehme an, es sollte GF gemeldet werden, gute Idee
– Squivo
24. August 2021 um 17:34 Uhr
Ich habe das gleiche Problem und bin hier auf deine Frage gestoßen. Ich lade verschiedene Formulare auf derselben Seite über Ajax und ich glaube, ich habe die Lösung gefunden.
Sieht so aus, als würde GF danach suchen, wenn das Formular mit Ajax geladen ist. Ich denke, sie gehen einfach davon aus, dass Sie GF mit Ajax geladen haben, das Sie verwenden ajax.url. Stattdessen habe ich mein eigenes Objekt verwendet, um Dinge zu lokalisieren, was Sie wahrscheinlich auch getan haben.
Hallo Klaudio, ich verstehe deine Meinung nicht mit “Ändere-das-in-Dein-Theme-Handle”! Woher ich bitte weiß, was mein Theme-Handle ist?!
– thống nguyễn
29. Juli 2021 um 4:40 Uhr
Ihr Design-Handle ist das, was Sie zum Registrieren eines anderen Skripts verwendet haben. Wenn Sie beispielsweise ein Skript in die Warteschlange einreihen, ist der zweite Parameter in dieser Funktion das Handle. Schau es dir hier an developer.wordpress.org/reference/functions/wp_localize_script Scrollen Sie nach unten zu den Kommentaren, um den Democode anzuzeigen.
– Klaudio Milankovic
12. August 2021 um 12:14 Uhr
14265200cookie-checkÜber AJAX geladenes Schwerkraftformular wird nicht gesendetyes