Sie können die Form Bridge-APIs verwenden, um einen Kommunikationskanal zwischen XFA-basierten HTML5-Formularen und Ihren Anwendungen zu öffnen. Die Form Bridge-APIs bieten eine connect API zum Erstellen der Verbindung.
Die Verbindungs-API akzeptiert einen Handler als ein Argument. Nachdem eine erfolgreiche Verbindung zwischen XFA-basiertem HTML5-Formular und Form Bridge erstellt wurde, wird der Handle 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
})
})
Stellen Sie sicher, dass Sie eine Verbindung erstellen, bevor Sie die formRuntime.jsp-Datei einbeziehen.
getBridgeVersion()
Gibt die Versionsnummer der Skriptbibliothek zurück.
isConnected() Prüft, ob der 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.
Eingabe:
Ausgabe: keine
Fehler: keine
getDataXML(options) Gibt die aktuellen Formulardaten im XML-Format aus
Eingabe:
options: JavaScript-Objekt, das die folgenden Eigenschaften enthält:
Ausgabe: keine
Fehler: keine
registerConfig(configName, config) Registriert Benutzer-/Portal-spezifische Konfigurationen mit FormBridge. Diese Konfigurationen überschreiben die Standardkonfigurationen. Die unterstützten Konfigurationen sind im Abschnitt „config“ angegeben.
Eingabe:
configName: Name der zu überschreibenden Konfiguration
widgetConfig: Ermöglicht dem Benutzer, die Standard-Widgets im Formular mit benutzerdefinierten Widgets zu überschreiben. Die Konfiguration wird überschrieben wie folgt:
formBridge.registerConfig("widgetConfig":{/*configuration*/})
pagingConfig: Ermöglicht dem Benutzer, das Standardverhalten zu überschreiben, bei 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 Protokollierungsstufe zu überschreiben, die Protokollierung für eine Kategorie zu deaktivieren oder festzulegen, ob die Protokollkonsole angezeigt oder an den Server gesendet werden soll. 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: Erlauben Sie Benutzern, die Proxy-Dienste für Übermittlung und Protokollierung zu registrieren.
window.formBridge.registerConfig("submitServiceProxyConfig",
{
"submitServiceProxy" : "`<submitServiceProxy>`",
"logServiceProxy": "`<logServiceProxy>`",
"submitUrl" : "`<submitUrl>`"
});
config: Wert der Konfiguration
Ausgabe: Objekt, das den ursprünglichen Wert der Konfiguration in der data-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
Eingabe:
Ausgabe: keine
Fehler: keine
showFields(fieldArray) Zeigt die Felder an, deren SOM-Ausdrücke im fieldArray bereitgestellt werden. Setzt diepresence-Eigenschaft der angegebenen Felder auf visible
Eingabe:
Ausgabe: keine
Fehler: keine
hideSubmitButtons() Blendet alle Senden-Schaltflächen im Formular aus
getFormState() Gibt die JSON-Datei aus, die den Formularstatus darstellt
Eingabe: keine
Ausgabe: Objekt, das JSON enthält, das den aktuellen Formularstatus in data -Eigenschaft.
Fehler: keine
restoreFormState(options) Stellt den Formularstatus im bereitgestellten JSON-Status im Optionsobjekt wieder her. Der Status wird angewendet und Erfolgs- oder Fehlerhandler werden aufgerufen, nachdem der Vorgang ist abgeschlossen ist.
Eingabe:
Optionen: JavaScript-Objekt, das die folgenden Eigenschaften enthält:
Ausgabe: keine
Fehler: keine
setFocus (som) Legt den Fokus auf das im SOM-Ausdruck angegebene Feld
setFieldValue (som, value) Legt den Wert der Felder für die angegebenen SOM-Ausdrücke fest
Eingabe:
Ausgabe: keine
Fehler: Löst im Fall eines falschen SOM-Ausdrucks eine Ausnahme aus
getFieldValue (som) Gibt den Wert der Felder für die angegebenen SOM-Ausdrücke aus
Eingabe: Array mit SOM-Ausdrücken der Felder, deren Wert abgerufen werden soll
Ausgabe: Objekt, das das Ergebnis als Array in data -Eigenschaft.
Fehler: keine
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 der Werte für die angegebene Eigenschaft der in SOM-Ausdrücken angegebenen Felder ab.
Eingabe:
Ausgabe: Objekt, das das Ergebnis als Array in *data *property enthält
Fehler: keine
setFieldProperties(som, property, values) Legt den Wert der angegebenen Eigenschaft für alle in den SOM-Ausdrücken angegebenen Felder fest
Eingabe:
Ausgabe: keine
Fehler: keine
// 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.
}