Sie können die Form Bridge APIs benutzen, um einen Übertragungskanal zwischen XFA-basierten HTML5-Formularen und Ihren Anwendungen zu öffnen. Die Form Bridge APIs stellen eine Verbindungs-API bereit, um die Verbindung zu erstellen.

Die Verbindungs-API akzeptiert einen Handler als ein Argument. Nachdem eine Verbindung zwischen XFA-basierten HTML5-Formularen und Form Bridge erstellt wurde, wird der Handler aufgerufen. 

Sie können den folgenden Beispielcode verwenden, um die Verbindung zu erstellen. 

// Example showing how to connect to FormBridge
window.addEventListener("FormBridgeInitialized",
                                function(event) {
                                    var fb = event.detail.formBridge;
                                    fb.connect(function() {
                                           //use form bridge functions 
	                        })
                            })

Hinweis:

Stellen Sie sicher, dass Sie eine Verbindung erstellen, bevor Sie die formRuntime.jsp-Datei einbeziehen. 

Verfügbare Form Bridge-API 

getBridgeVersion()

Gibt die Versionsnummer der Skriptbibliothek zurück.
  • Eingabe: keine
  • Ausgabe: Versionsnummer der Skriptbibliothek
  • Fehler: keine

isConnected ()

Prüft, ob Formularstatus initialisiert wurde

  • Eingabe: keine
  • Ausgabe: True, wenn der XFA-Formularstatus initialisiert wurde.
  • Fehler: keine

connect(handler,context)

Stellt eine Verbindung zu FormBridge her und führt die Funktion aus, nachdem die Verbindung hergestellt und der Formularstatus initialisiert wurde.

  • Input
    • handler: Funktion, die ausgeführt wird, wenn Form Bridge verbunden ist.
    • context: Das Objekt, auf das der Kontext (dies) der handler-Funktion festgelegt wird.
  • Ausgabe: keine
  • Fehler: keine

getDataXML(options)

Gibt die Daten des aktuellen Formulars im XML-Format zurück.

  • Input: 
    • options: JavaScript-Objekt, das die folgenden Eigenschaften enthält:
      • Error: Fehlerhandler-Funktion
      • success: Erfolgshandler-Funktion. Diese Funktion wird an ein Objekt übergeben, das XML in der data-Eigenschaft enthält.
      • context: Das Objekt, auf das der Kontext (dies) der success-Funktion festgelegt wird.
      • validationChecker: Funktion, um die Überprüfungsfehler zu prüfen, die vom Server erhalten wurden. Der Überprüfungsfunktion wird ein Array von Fehlerstrings übergeben.
      • formState: Der JSON-Status des XFA-Formulars. Hierfür muss Daten-XML zurückgegeben werden. Wenn nicht anders angegeben, wird Daten-XML für das aktuell gerenderte Formular zurückgegeben.
  • Ausgabe: keine
  • Fehler: keine

registerConfig(configName, config)

Registriert Benutzer/portalspezifische Konfigurationen bei FormBridge. Diese Konfigurationen überschreiben die Standardkonfigurationen. Die unterstützten Konfigurationen sind im Abschnitt „config“ angegeben.

  • Input:
    • configName: Name der zu überschreibenden Konfiguration
      • widgetConfig: Erlaubt dem Benutzer, die Standard-Widgets im Formular mit benutzerdefinierten Widgets zu überschreiben. Die Konfiguration wird überschrieben wie folgt:
        formBridge.registerConfig("widgetConfig":{/*configuration*/})
      • pagingConfig: Erlaubt dem Benutzer, das Standardverhalten zu überschreiben, nach dem nur die erste Seite gerendert wird. Die Konfiguration wird überschrieben wie folgt:
        window.formBridge.registerConfig("pagingConfig":{pagingDisabled: <true | false>, shrinkPageDisabled: <true | false> }). 
      • LoggingConfig: Ermöglicht dem Benutzer, die Protokollierungsebene zu überschreiben, die Protokollierung für eine Kategorie zu deaktivieren oder festzulegen, ob die Protokolle angezeigt oder an den Server gesendet werden. Die Konfiguration kann überschrieben werden wie folgt:
      • formBridge.registerConfig{
        "LoggerConfig" : {
            {
                "on":<true false>,
                "category":<array of categories>,
                "level":<level of categories>, "
                type":<"console"/"server"/"both">
            }
        }
      • SubmitServiceProxyConfig: Zulassen, dass Benutzer Sende- und Protokoll-Proxy-Dienste anmelden können.
        window.formBridge.registerConfig("submitServiceProxyConfig",
        {
           "submitServiceProxy" : "<submitServiceProxy>",
           "logServiceProxy": "<logServiceProxy>",
           "submitUrl" : "<submitUrl>"
        });
    • config: Wert der Konfiguration
       
  • Ausgabe: Objekt, das den ursprünglichen Wert der Konfiguration in derdata-Eigenschaft enthält.
  • Fehler: keine
 

hideFields(fieldArray)

Blendet die Felder aus, deren SOM-Ausdrücke im fieldArray bereitgestellt werden. Setzt diepresence-Eigenschaft der angegebenen Felder auf invisible

  • Input: 
    • fieldArray: Array von SOM-Ausdrücken für die auszublendenden Felder
  • Ausgabe: keine
  • Fehler: keine

showFields(fieldArray)

Zeigt die Felder, deren SOM-Ausdrücke im fieldArray bereitgestellt werden. Setzt diepresence-Eigenschaft der angegebenen Felder auf visible

  • Input:
    • fieldArray: Array von SOM-Ausdrücken für die anzuzeigenden Felder
  • Ausgabe: keine
  • Fehler: keine

hideSubmitButtons()

Blendet alle Sendeschaltflächen im Formular aus.

  • Eingabe: keine
  • Ausgabe: keine
  • Fehler: Gibt einen Ausnahmefehler aus, wenn Formularstatus nicht initialisiert wurde.

getFormState()

Gibt JSON-Datei zurück, die den Formularstatus darstellt.

  • Eingabe: keine
  • Ausgabe: Objekt mit JSON-Datei, die den aktuellen Formularstatus in der data-Eigenschaft enthält.
  • Fehler: keine

restoreFormState(options)

Stellt den Formularstatus aus dem bereitgestellten JSON-Status im Optionenobjekt wieder her. Der Status wird angewendet und Erfolgs- oder Fehlerhandler werden aufgerufen, nachdem der Vorgang ist abgeschlossen ist.

  • Input:
    • Options: JavaScript-Objekt, das folgende Eigenschaften enthält:
      • Error: Fehlerhandler-Funktion
      • success: Erfolgshandler-Funktion
      • context: Das Objekt, auf das der Kontext (dies) der success-Funktion festgelegt wird.
      • formState: JSON-Status des Formulars. Das Formular wird im JSON-Status wiederhergestellt.
  • Ausgabe: keine
  • Fehler: keine

setFocus (som)

Legt den Fokus auf das Feld, das vom gegebenen SOM-Ausdruck angegeben wird.

  • Eingabe: SOM-Ausdruck des Felds, auf das der Fokus gelegt werden soll.
  • Ausgabe: keine
  • Fehler: Gibt im Fall eines falschen SOM-Ausdrucks einen Ausnahmefehler aus.

setFieldValue (som,value)

Legt den Wert der Felder für die gegebenen SOM-Ausdrücke fest.

  • Input: 
    • som: Array, das SOM-Ausdrücke des Felds enthält. SOM-Ausdruck zur Festlegung des Felderwerts. 
    • value: Array der Werte, die den SOM-Ausrücken in einemSOM-Array entsprechen. Wenn der Datentyp des Werts nicht mit fieldType übereinstimmt, wird der Wert nicht geändert.
  • Ausgabe: keine
  • Fehler: Gibt im Fall eines falschen SOM-Ausdrucks einen Ausnahmefehler aus.

getFieldValue (som)

Gibt den Wert der Feldern für die gegebenen SOM-Ausdrücke zurück.

  • Eingabe: Array, das die SOM-Ausdrücke der Felder enthält, deren Wert abgerufen werden soll.
  • Ausgabe: Objekt, das das Ergebnis als Array in der data-Eigenschaft enthält.
  • Fehler: keine

Beispiel für API „getFieldValue()“

var a =  formBridge.getFieldValue(“xfa.form.form1.Subform1.TextField”);
if(a.errors) {
    var err;
     while((err = a.getNextMessage()) != null)
               alert(a.message)
} else {
   alert(a.data[0]) 
}

getFieldProperties(som,property)

Rufen Sie die Liste von Werten für die angegebene Eigenschaft der Felder ab, die in den SOM-Ausdrücken festgelegt werden.

  • Input:
    • som: Array, das SOM-Ausdrücke für die Felder enthält.
    • property: Name der Eigenschaft, deren Wert erforderlich ist.
  • Ausgabe: Objekt, das das Ergebnis als Array in der data-Eigenschaft enthält.
  • Fehler: keine

setFieldProperties(som,property,values)

Legt den Wert der angegebenen Eigenschaft für alle Felder fest, die in den SOM-Ausdrücken bestimmt werden.

  • Input:
    • som: Array, enthält SOM-Ausdrücke der Felder, deren Wert festgelegt werden soll.
    • property: Eigenschaft, deren Wert festgelegt werden soll.
    • value: Array, das die Werte der angegebenen Eigenschaft für die Felder enthält, die in den SOM-Ausdrücken festgelegt werden.
  • Ausgabe: keine
  • Fehler: keine

Beispielverwendung der Form Bridge-API:

// Example 1: FormBridge.restoreFormState
  function loadFormState() {
    var suc = function(obj) {
             //success
            }
    var err = function(obj) {
           while(var t = obj.getNextMessage()) {
         $("#errorDiv").append("<div>"+t.message+"</div>");
           }
           }
        var _formState = // load form state from storage
    formBridge.restoreFormState({success:suc,error:err,formState:_formState}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
  }

//--------------------------------------------------------------------------------------------------

//Example 2: FormBridge.submitForm
  function SubmitForm() {
    var suc = function(obj) {
             var data = obj.data;
         // submit the data to a url;
            }
    var err = function(obj) {
           while(var t = obj.getNextMessage()) {
         $("#errorDiv").append("<div>"+t.message+"</div>");
           }
           }
    formBridge.submitForm({success:suc,error:err}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
  }

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie