Wert für das Vorkommen eines Objekts

Die eckige Klammer ([ ]) gibt den Wert für das Vorkommen eines Objekts an.

In sprachspezifischen Formularen für Arabisch, Hebräisch, Thailändisch und Vietnamesisch befindet sich die Referenzsyntax grundsätzlich rechts (auch bei Sprachen, die von rechts nach links geschrieben werden).

Notation

[ ]

Beispiel

Um eine Referenz mit einem solchen Wert zu erstellen, setzen Sie eckige Klammern ([ ]) hinter einen Objektnamen und fügen Sie zwischen den eckigen Klammern einen der folgenden Werte ein:

  • [ n ], wobei n eine absolute Vorkommens-Indexnummer ist (der Index beginnt bei 0). Wenn eine Vorkommensnummer außerhalb des zulässigen Bereichs liegt, wird kein Wert zurückgegeben. Beispiel:

    xfa.form.form1.#subform.Quantity[3]

    referenziert das vierte Vorkommen des Objekts „Quantity“.

  • [ +/- n ], wobein ein Vorkommen relativ zum Vorkommen des Objekts angibt, von welchem die Referenz ausgeht. Positive Werte liefern höhere Vorkommensnummern und negative Werte liefern niedrigere. Beispiel:

    xfa.form.form1.#subform.Quantity[+2]

    Diese Referenz liefert das Vorkommen von „Quantity“, dessen Vorkommensnummer um 2 höher ist als die Vorkommensnummer des Containers, von dem die Referenz ausgeht. Stünde diese Referenz beispielsweise mit dem Objekt „Quantity[2]“ in Verbindung, so wäre sie gleichbedeutend mit:

    xfa.template.Quantity[4]

    Wenn die berechnete Indexnummer außerhalb des zulässigen Bereichs liegt, gibt die Referenz einen Fehler zurück.

    Die häufigste Anwendung dieser Syntax ist die Ansteuerung des vorigen oder nächsten Vorkommens eines bestimmten Objekts. Beispielsweise könnte man bei jedem Vorkommen des Objekts „Quantity“ (außer beim ersten) mit „Quantity[-1]“ den Wert des vorigen „Quantity“-Objekts abrufen.

  • [*] gibt mehrere Vorkommen eines Objekts an. Das erste benannte Objekt wird gefunden und die mit dem ersten Objekt verwandten Objekte desselben Namens werden zurückgegeben. Beachten Sie, dass bei dieser Notation eine Zusammenstellung von mehreren Objekten zurückgegeben wird. Beispiel:

    xfa.form.form1.#subform.Quantity[*]
  • Dieser Ausdruck bezieht sich auf alle Objekte mit dem Namen Quantity, die mit dem ersten von der Referenz gefundenen Vorkommen von Quantityverwandt sind.

In dem gezeigten Baumdiagramm geben diese Ausdrücke jeweils die folgenden Objekte zurück:

  • Subform_Page.Subform1[*] gibt beide Subform1-Objekte zurück.

  • Subform_Page.Subform1.Subform3.TextField2[*] gibt zwei TextField2-Objekte zurück.Subform_Page.Subform1 wird zum ersten Subform1-Objekt links aufgelöst und TextField2[*] wird relativ zum Objekt Subform3 ausgewertet.

  • Subform_Page.Subform1[*].TextField1 gibt beideTextField1-Instanzen zurück.Subform_Page.Subform1[*] wird zu beiden Subform1-Objekten aufgelöst und TextField1 wird relativ zu den Subform1-Objekten ausgewertet.

  • Subform_Page.Subform1[*].Subform3.TextField2[1] gibt das zweite und vierte TextField2-Objekt von links zurück.Subform_Page.Subform1[*] wird zu beiden Subform1-Objekten aufgelöst und TextField2[1] wird relativ zu den Subform3-Objekten ausgewertet.

  • Subform_Page.Subform1[*].Subform3[*] gibt die beiden Instanzen des Subform3-Objekts zurück.

  • Subform_Page.*gibt beide Subform1-Objekte und das Objekt Subform2 zurück.

  • Subform_Page.Subform2.* gibt die beiden Instanzen des NumericField2-Objekts zurück.

  • Sie können die Syntax mit eckigen Klammern ([ ]) in Verbindung mit JavaScript und der resolveNode-Methode verwenden.