Sie sehen sich Hilfeinhalte der folgenden Version an:

Es gibt einige häufig gestellte Fragen (FAQ) zu Layout, Skriptunterstützung und dem Umfang von HTML5-Formularen.

 

Layout

  1. Warum werden Barcodes und das Unterschriftsfeld in meinem Formular nicht angezeigt?

    Antwort: Barcodes und Unterschriftsfelder sind in HTML- oder Mobilgerät-Szenarien nicht wichtig. Diese Felder erscheinen als nicht-interaktiver Bereich. AEM Forms Designer bietet allerdings ein neues Scribble-Unterschriftsfeld, das anstelle des Unterschriftsfeldes verwendet werden kann. Sie können auch ein benutzerdefiniertes Widget für Barcodes hinzufügen und integrieren.

  2. Wird im XFA-Textfeld Rich Text unterstützt?

    Antwort: Das XFA-Feld, das umfangreiche Inhalte in AEM Forms Designer zulässt, wird nicht unterstützt, sondern als normaler Text dargestellt, der nicht über die Benutzeroberfläche formatiert werden kann. Auch XFA-Felder mit Kombinationseigenschaft werden als normales Feld angezeigt, obwohl je nach dem Wert der Kombinationszahlen Einschränkungen hinsichtlich der zulässigen Zeichenanzahl möglich sind.

  3. Gibt es Einschränkungen bei der Verwendung wiederholbarer Teilformulare?

    Antwort: Wiederholbare Teilformulare müssen eine Anfangsanzahl von 1 oder höher haben. Wiederholbare Teilformulare mit einer anfänglichen Anzahl von Null werden nicht unterstützt. Sie können auch ein wiederholbares Teilformular verwenden und es nicht anzeigen, wenn das Formular geladen wird. Um den Anwendungsfall zu erreichen:

    1. Legen Sie die Anfangszahl des wiederholbaren Teilformulars auf 1 fest.

      intial-count
    2. Verwenden Sie das initialize-Ereignis des Formulars, um die primäre Instanz des Teilformulars auszublenden. Der folgende Code beispielsweise blendet die primäre Instanz des Teilformulars bei der Formularinitialisierung aus. Außerdem überprüft es den App-Typ, um sicherzustellen, dass das Skript nur auf der Clientseite ausgeführt wird:

      if ((xfa.host.appType == "HTML 5" || xfa.host.appType == "Exchange-Pro" || xfa.host.appType == "Reader")&&(_RepeatSubform.count == 1)&&(form1.Page1.Subform1.RepeatSubform.Key.rawValue == null)) {
      RepeatSubform.presence = "hidden";
      }  
    3. Öffnen Sie das Skript zum Hinzufügen einer Instanz des Teilformulars zum Bearbeiten. Fügen Sie den folgenden Code hinzu, um eine Instanz des Teilformularskripts hinzuzufügen.

      Der folgende Code überprüft die ausgeblendete Instanz des Teilformulars. Wenn die ausgeblendete Instanz des Teilformulars gefunden wird, löschen Sie die ausgeblendete Instanz des Teilformulars, und fügen Sie eine neue Instanz ein. Wenn die ausgeblendete Instanz des Teilformulars nicht gefunden wird, fügen Sie einfach eine neue Instanz des Teilformulars ein.

      if (RepeatSubform.presence == "hidden")
      { 
      RepeatSubform.instanceManager.insertInstance(0);
      RepeatSubform.instanceManager.removeInstance(1);
      }
      else
      {
      RepeatSubform.instanceManager.addInstance(1);
      }
    4. Öffnen Sie das Skript zum Entfernen einer Instanz des Teilformulars zum Bearbeiten.  Fügen Sie Code ähnlich dem folgenden zum Entfernen einer Instanz des Teilformulars hinzu.

      Der Code überprüft die Anzahl der Teilformulare. Wenn die Anzahl der Teilformulare 1 erreicht, blendet der Code das Teilformular aus, anstatt es zu löschen.

      if (RepeatSubform.instanceManager.count == 1) {
      RepeatSubform.presence = "hidden";
      } else {
      RepeatSubform.instanceManager.removeInstance(RepeatSubform.instanceManager.count - 1);
      }
    5. Öffnen Sie das presubmit-Ereignis des Formulars zum Bearbeiten. Fügen Sie dem Ereignis das folgende Skript hinzu, um die ausgeblendete Instanz des Skripts vor der Bearbeitung zu entfernen. Es verhindert das Senden von Daten des ausgeblendeten Teilformulars bei der Übermittlung.

      if(RepeatSubform.instanceManager.count == 1 && RepeatSubform.presence == "hidden") {
      RepeatSubform.instanceManager.removeInstance(0);
      }
  4. Gibt es Einschränkungen bei der Verwendung ausgeblendeter Teilformulare?

    Antwort: Ein ausgeblendetes Teilformular mit einer komplexen Hierarchie, die auf mehrere Seiten aufgeteilt ist, führt zu Problemen mit dem Layout. Eine Option besteht darin, das Teilformular am Anfang als sichtbar zu markieren und es anschließend in einem auf Logik oder Daten basierenden Initialisierungsskript auszublenden.

  5. Warum sind einige Textteile abgeschnitten oder werden in HTML5 nicht korrekt angezeigt?

    Antwort: Wenn nicht genügend Platz zum Anzeigen des Inhalts eines Zeichnungs- oder Beschriftungs-Textelements vorhanden ist, werden manche Texte im Rendering von Mobile Forms abgeschnitten angezeigt. Diese Kürzung ist dann auch in der Designansicht von AEM Forms Designer sichtbar. Zwar kann eine solche Kürzung im PDF-Format bearbeitet werden, in HTML5-Formularen ist dies jedoch nicht möglich. Wenn Sie dieses Problem vermeiden möchten, stellen Sie genügend Platz zum Zeichnen oder für Beschriftungen zur Verfügung, damit der Text im Designmodus von AEM Forms Designer nicht abgeschnitten wird.

  6. Ich habe beim Layout Probleme mit fehlenden oder überlagerten Inhalten. Was ist der Grund dafür?

    Antwort: Wenn sich ein  Textzeichnungs- oder Textbild-Element an derselben Position befindet wie ein überlagertes Element (z. B. ein Rechteck), ist der Inhalt des Elements nicht sichtbar, wenn dieses in der Dokumentreihenfolge später kommt (in der AEM Forms Designerhierarchie-Ansicht). PDF unterstützt eine transparente Überlagerung, HTML/Browser unterstützen jedoch keine transparente Überlagerung. 

  7. Warum werden einige Schriften im HTML-Formular in anderer Form angezeigt als beim Entwerfen des Formulars?

    Antwort: In HTML5-Formularen werden keine Schriften eingebettet (im Gegensatz zu PDF-Formularen, in denen Schriften in das Formular eingebettet sind). Damit die HTML-Version eines Formulars erwartungsgemäß dargestellt wird, stellen Sie sicher, dass Die in der XDP angegebenen Schriftarten auf dem Server und dem Clientcomputer verfügbar sind. Wenn die erforderlichen Schriftarten nicht auf dem Server verfügbar sind, werden Ersatzschriftarten verwendet. Wenn Sie darüber hinaus in der Formularvorlage Schriftarten verwenden, die auf dem Client-Gerät nicht verfügbar sind, werden zur Darstellung von diesem Text die Standardschriftarten des Browsers verwendet.

  8. Werden die Attribute „vAlign“ und „hAlign“ in HTML-Formularen unterstützt?

    Ja, die Attribute „vAlign“ und „hAlign“ werden in HTML-Formularen unterstützt. Das Attribut „vAlign“ wird im Internet Explorer und mehrzeiligen Feldern nicht unterstützt. 

  9. Unterstützen HTML5-Formulare hebräische Zeichen?

    HTML5-Formulare unterstützen hebräische Zeichen in allen Browsern außer Microsoft Internet Explorer.

  10. Gibt es in HTML5-Formularen Beschränkungen für numerische Felder?

    Antwort: Ja, HTML5-Formulare weisen einige Einschränkungen auf. Wenn die Anzahl der Ziffern die in der Picture-Klausel festgelegte Anzahl überschreitet, werden die Zahlen nicht lokalisiert, sondern im englischen Gebietsschema angezeigt. 

  11. Warum sind HTML-Formulare größer als PDF-Formulare?

    Eine Vielzahl von Daten-Zwischenstrukturen und Objekte wie Formular-DOM, Daten-DOM und Layout-DOM sind zum Rendern einer XDP in einem HTML-Formular erforderlich. 

    Für PDF-Formulare verfügt Adobe Acrobat über eine integrierte XTG-Engine zum Erstellen von Daten-Zwischenstrukturen und Objekten. Acrobat übernimmt auch Layout und Skripte.

    Für HTML5-Formulare verfügen Browser nicht über eine integrierte XTG-Engine zum Erstellen von Daten-Zwischenstrukturen und Objekten aus rohen XDP-Byte. D. h. für HTML5-Formulare werden Zwischenstrukturen auf dem Server generiert und an den Client gesendet. Auf dem Client verwenden ein Javascript-basiertes Skript und die Layout-Engine diese Zwischenstrukturen.

    Die Größe der Zwischenstruktur hängt von der Größe der Original-XDP und der mit der XDP zusammengeführten Daten ab.

  12. Gibt es Einschränkungen bei der Verwendung von Tabellen in meinem XDP?

    Antwort: Beim Rendering komplexer Tabellen treten Probleme auf. 

    • Abschnitte (Teilformularsätze) innerhalb einer Tabelle werden nicht unterstützt.
    • Die Kopf- oder Fußzeilen in einigen Tabellen sind für eine Wiederholung markiert. Die Aufteilung von Tabellen über mehrere Seiten kann zu Problemen führen.
  13. Haben barrierefreie Tabellen Beschränkungen?

    Antwort: Ja barrierefreie Tabellen haben die folgenden Einschränkungen:  

    • Verschachtelte Tabellen und Teilformulare innerhalb einer Tabelle werden nicht unterstützt.
    • Kopfzeilen werden nur für die erste Zeile bzw. die linken Spalten der Tabelle unterstützt. Kopfzeilen werden nicht für die Tabellenelemente unterstützt. Sie können Kopfzeilen auf mehrere Zeilen anwenden und Spaltenüberschriften und Spaltenüberschriften werden unterstützt, wenn alle derartigen Zeilen und Spalten auf der obersten Zeile oder in der ganz linken Spalte der Tabelle sind.
    • Rowspan und colspan von einer beliebigen Stelle in der Tabelle wird nicht unterstützt.
    • Sie können Instanzen von Zeilen, die Elemente mit rowspan-Werten größer als 1 enthalten, nicht dynamisch hinzufügen oder entfernen.  

     

  14. Was ist die Lesereihenfolge der QuickInfo und Beschriftung für Bildschirmleseprogramme?

    • Wird QuickInfo und Beschriftung vorhanden sind, wird nur die Beschriftung gelesen. Wenn die Beschriftung nicht verfügbar ist, wird die QuickInfo gelesen. Sie können den Vorrang für das Lesen in einem XDP auch mit Hilfe des Formulardesigners festlegen.
    • Wenn Sie den Mauszeiger über einem Element bewegen, wird die QuickInfo angezeigt. Wenn die QuickInfo nicht verfügbar ist, wird Sprachtext angezeigt. Wenn Sprachtext nicht verfügbar ist, dann wird der Feldname angezeigt.
  15. Wenn Sie den Mauszeiger über ein Feld bewegen, wird eine QuickInfo angezeigt. Wie deaktiviert man sie?

    Um den Tooltip beim Daraufzeigen zu deaktivieren, wählen Sie in der Eingabehilfe des Designers „Keine“ aus.

  16. In Designer kann ein Benutzer benutzerdefinierte Erscheinungsbildeigenschaften von Optionsfeldern und Kontrollkästchen konfigurieren. Berücksichtigen HTML5-Formulare beim Rendern von Formularen auch diese benutzerdefinierten Erscheinungsbildeigenschaften? 

    Antwort: HTML5-Formulare ignorieren die benutzerdefinierten Erscheinungsbildeigenschaften von Optionsfeldern und Kontrollkästchen. Die Optionsfeldern und Kontrollkästchen werden entsprechend den Spezifikationen des zugrundeliegenden Browsers angezeigt.

  17. Wenn ein HTML5-Formular in einem unterstützten Browser geöffnet wird, wird der Rand der angrenzenden Felder nicht richtig ausgerichtet oder Teilformulare erscheinen überlappend. Wenn das gleiche HTML5-Formular im Forms Designer in der Vorschau angezeigt wird, erscheinen die Felder und das Layout nicht falsch ausgerichtet und die Teilformulare erscheinen an der richtigen Position. Wie behebt man das Problem?

    Wenn ein Unterformular auf Flussinhalt gesetzt ist und das Teilformular ein ausgeblendetes Randelement hat, wird der Rand der angrenzenden Felder nicht richtig ausgerichtet oder die Teilformulare erscheinen überlappend. Um das Problem zu beheben, können Sie die versteckten <border>-Elemente aus dem entsprechenden XDP entfernen oder mit Kommentaren versehen. Beispielsweise wird das folgende <border>-Element als Kommentar markiert:

                <!--<border>
                   <edge presence="hidden"/>
                   <corner thickness="0.175mm" presence="hidden"/>
                </border> -->

Skripterstellung

  1. Gibt es Einschränkungen bei der Implementierung von JavaScript in HTML-Formularen?

    Antwort:

    • Das Skript xfa.connectionSet wird nur eingeschränkt unterstützt. Für connectionSet werden nur serverseitige Webdienstaufrufe unterstützt. Detaillierte Informationen finden Sie unter Skriptunterstützung.
    • In clientseitigen Skripten werden $record und $data nicht unterstützt. Wenn die Skripte jedoch in einen formReady, layoutReady-Block geschrieben werden, funktionieren diese Skripte weiterhin, da die Ereignisse auf der Serverseite ausgelöst werden.
    • XFA-Zeichnungselement-spezifische Skripte wie eine Änderung des Zeichnungstextes (oder im Falle von Feldern des Beschriftungstextes) werden nicht unterstützt.
  2. Gibt es Einschränkungen bei der Verwendung von formCalc?

    Antwort: Derzeit ist nur eine Untergruppe der formCalc-Skripten implementiert. Detaillierte Informationen finden Sie unter Skriptunterstützung.

  3. Gibt es eine empfohlene Benennungskonvention und gibt es reservierte Schlüsselwörter, die vermieden werden sollten?

    • In AEM Forms Designer wird empfohlen, den Namen eines Objekts (wie etwa ein Unterformular oder ein Textfeld) nicht mit einem Unterstrich (_) beginnen zu lassen. Wenn Sie einen Unterstrich am Beginn des Namens verwenden möchten, fügen Sie nach dem Unterstrich ein Präfix ein: _<Präfix><Objektname>. 
    • Alle HTML5-Formular-APIs sind reservierte Schlüsselwörter. Bei benutzerdefinierten APIs/Funktionen müssen Sie einen Namen verwenden, der nicht mit den HTML5 Forms APIs identisch ist. 
  4. Unterstützen HTML5-Formulare schwebende Felder?

    Ja, HTML5-Formulare unterstützen schwebende Felder. Um schwebende Felder zu aktivieren, fügen Sie folgende Eigenschaften zum Renderprofil hinzu:

    Hinweis:

    Standardmäßig werden die Felder nicht als schwebende Felder aktiviert. Sie können den Forms Designer verwenden, um die schwebenden Eigenschaften der Felder festzulegen.

    1. Öffnen Sie CRXde lite und navigieren Sie zum Knoten /content/xfaforms/profiles/default.

    2. Fügen Sie eine Eigenschaft mfDataDependentFloatingField hinzu und legen Sie den Wert der Eigenschaft auf true fest.

    3. Klicken Sie auf Alle speichern. Jetzt sind die schwebenden Felder für die HTML-Formulare mit dem aktualisierten Renderprofil aktiviert. 

      Hinweis:

      Um schwebende Felder für ein spezifisches Formular zu aktivieren, ohne das Renderprofil zu aktualisieren, geben Sie die Eigenschaft „mfDataDependentFloatingField=true“ als URL-Parameter weiter.

  5. Führt HTML5-Formulare das Initialisierungsskript und das Ereignis „Form Ready“ mehrmals aus?

    Ja, die Initialisierungsskripts und formularbereiten Ereignisse werden mehrmals ausgeführt, mindestens einmal auf dem Server und einmal auf der Clientseite. Es wird empfohlen, Skripte wie „initialize“ oder „form:ready“-Ereignisse basierend auf einer Geschäftslogik (Formular- oder Felddaten) zu schreiben, sodass die Aktion basierend auf dem Status der Daten und „idempotent“ (wenn die Daten gleich sind) ausgeführt wird.

XDP entwerfen

  1. Gibt es reservierte Schlüsselwörter in HTML5-Formularen?

    Antwort: Alle HTML5-Formular-APIs sind reservierte Schlüsselwörter. Bei benutzerdefinierten APIs/Funktionen müssen Sie einen Namen verwenden, der nicht mit den HTML5 Forms APIs identisch ist. Wenn Sie, abgesehen von reservierten Schlüsselwörtern, Objektnamen verwenden, die mit einem Unterstrich (_) beginnen, wird empfohlen, nach dem Unterstrich ein Präfix einzufügen. Das Einfügen eines Präfix verhindert mögliche Konflikte mit HTML5-Formular-internen APIs. Beispiel: _fpField1

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