Von Version 11.10
bearbeitet von gru
am 02.03.2023, 09:19
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 9.12
bearbeitet von gru
am 05.10.2022, 13:47
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,1 +1,1 @@
1 -Formular über externen Kontext einbinden
1 +Formular per AJAX einbinden
Inhalt
... ... @@ -1,79 +1,34 @@
1 -== 1. Externen Kontext via iFrame einbinden z.B. ==
2 -
3 -[[https://pro.form.cloud/formcycle/external/forms/main.xhtml]]
4 -
5 -TODO: iframe
6 -
7 -== 2. Eventlistener für Formularauswahl registrieren z.B.: ==
8 -
9 -{{code language="javascript"}}
10 -function myFormCycleCallback(msg){
11 - $('#result').html('Nachricht von: "<b>' + msg.origin + '</b>" Formular mit id: "<b>' + msg.data + '</b>" wurde ausgewählt.' );
12 - renderForm(msg.data);
13 -}
14 -
15 -window.addEventListener("message", myFormCycleCallback, false);
16 -{{/code}}
17 -
18 -== 3. Ergebenis speichern: ==
19 -
20 -TODO: Iframe
21 -{{html clean="false"}}
22 - <div class="hljs" id="result"></div>
1 +{{html clean="false"}}
2 + <style type="text/css">
3 + span.box{
4 + display: block;
5 + padding: 20px;
6 + }
7 + </style>
23 23  {{/html}}
24 24  
10 +Sie können das Formular direkt per AJAX ohne IFrames in Ihre Webseite einbinden. Unterstützung der möglichen Einbindungsoptionen finde Sie in FORMCYCLE direkt unter [[Veröffentlichen>>doc:Formcycle.UserInterface.MyForms.Publish.WebHome||target="_blank"]].
25 25  
26 -== 4. Formular einbinden: ==
12 + {{code}} <!DOCTYPE html>
13 + <html>
14 + <head>
15 + <meta charset="utf-8">
16 + <!-- jQuery must be loaded-->
17 + <script src="https://demo7.formcycle.eu/formcycle/form/includes/010-jquery-min.js?_nc=1637667410192"></script>
18 + <!-- configure path to your server, the id of the content element where the form should placed into and id of the form.-->
19 + <script src="https://demo7.formcycle.eu/formcycle/form/include.js?auto=1&form_container_id=content&form_id=564&form_base=https://demo7.formcycle.eu/formcycle"></script>
20 + </head>
27 27  
28 -{{code language="js"}}
29 -window.renderForm = function(formId){
30 - var myBase = 'https://help7.formcycle.eu/xwiki/bin/view/Examples/IncludeExternalContext/';
31 - var fcBase = 'https://pro.form.cloud/formcycle';
32 - var myFormContainer = $('#content');
33 -
34 - var form = $.ajax({
35 - type: "GET",
36 - url: fcBase + '/form/provide/' + formId,
37 - data:{
38 - //Render-Parameter
39 - "xfc-rp-inline":true, //Verwendete resourcen auflösen
40 - "xfc-rp-form-only":true, //Formular ohne HTML, BODY etc.
41 - "xfc-rp-usejq":false, //jQuery einbinden
42 - "xfc-rp-keepalive":false, //Ping zur Sessionverlängerung
43 - "xfc-rp-usecss":true, //Use Formcycle CSS files
44 - "xfc-rp-useui":true, //jQueryUI einbinden
45 - //Prozess-Parameter
46 - "xfc-pp-external":true, //Externer Formularrequest
47 - "xfc-pp-base-url":fcBase, //URL zum FormCycle
48 - "xfc-pp-success-url": myBase + "/anfrage-versendet.html", //CMS Seite bei erfolg
49 - "xfc-pp-error-url": myBase + "/anfrage-fehler.html" //CMS Seite bei Fehler
50 - },
51 - cache: false,
52 - async: false,
53 - success:function(html){
54 - myFormContainer.html(html);
55 - },
56 - crossDomain: true
57 - });
58 -}
59 -{{/code}}
22 + <body class="body">
23 + <!-- this is the div where the form will be placed into -->
24 + <div id="content"></div>
25 + </body>
26 + </html>
27 + {{/code}}
60 60  
29 +Die Einbindung erfolgt hier zur Demonstration in eine eigene HTML-Seite in einem iframe:
61 61  
62 -== 5. Ergebenis Formular: ==
63 -
64 64  {{html clean="false"}}
65 - <div class="hljs" id="content"></div>
66 -{{/html}}
67 -
68 -
69 -
70 -
71 -
72 -
73 -
74 -Für das folgenden Beispiel wird zu Demonstrationszwecken eine eigene [[HTML-Seite>>attach:iframe.html]] in einem iframe dargestellt:
75 -
76 -{{html clean="false"}}
77 77   <style type="text/css">
78 78   pre{
79 79   margin:0;
... ... @@ -111,6 +111,7 @@
111 111   margin:0;
112 112   padding:0;
113 113   border:0;
69 + width: 100%;
114 114   height: inherit;
115 115   }
116 116   .border { border:4px dashed black; }
iframe.html
Größe
... ... @@ -1,1 +1,1 @@
1 -893 bytes
1 +788 bytes
Inhalt
... ... @@ -6,16 +6,11 @@
6 6   <script src="https://demo7.formcycle.eu/formcycle/form/includes/010-jquery-min.js?_nc=1637667410192"></script>
7 7   <!-- configure path to your server, the id of the content element where the form should placed into and id of the form.-->
8 8   <script src="https://demo7.formcycle.eu/formcycle/form/include.js?auto=1&form_container_id=content&form_id=564&form_base=https://demo7.formcycle.eu/formcycle"></script>
9 - <style>
10 - h1.page, p.page {
11 - text-align: center;
12 - }
13 - </style>
14 14   </head>
15 15  
16 16   <body class="body">
17 - <h1 class="page">Beispielwebseite</h1>
18 - <p class="page">Mit dem obenstehenden Code kann ein FORMCYCLE Formular per AJAX in die Website geladen werden.</p>
12 + <h1>Beispielwebseite</h1>
13 + <p>Mit dem obenstehenden Code kann ein FORMCYCLE Formular per AJAX in die Website geladen werden.</p>
19 19   <!-- this is the div where the form will be placed into -->
20 20   <div id="content"></div>
21 21   </body>