Loop (SP-Tag)
Version vom 13. Februar 2009, 14:47 Uhr von Jankowski (Diskussion | Beiträge)
Name
<sp:loop> - Durchläuft eine Liste
Syntax
<sp:loop collection="tpool.elements" item="it">
...
</sp:loop>
Beschreibung
Mit Hilfe des Loop-Tags können Collections oder Zeichenketten die Trennzeichen enthalten, Element für Element durchlaufen werden. Der Inhalt innerhalb des Start- und End-Tags wird für jedes Element der Liste ausgegeben. Mit dem Variablennamen, der über das Attribut item
angegenben wird, kann sowohl auf das aktuelle Loop-Element zugegriffen werden, wie auch auf Werte die den Schleifendurchlauf betreffen (siehe IteratorItem).
Der Loop-Tag kapselt die eigentlichen Elemente der Liste in einem IteratorItem-Objekt. Dadurch können nicht nur die Attribute der Elemente sondern beispielsweise auch die Index-Position des aktuellen Elementes ausgegeben werden.
Attribute
Name | Type | Required | Default | ab IES Version |
---|---|---|---|---|
collection
|
Collection | Ja oder list
|
None | 1 |
list
|
Text | Ja oder collection
|
None | 1 |
item
|
Variable | Nein | None | 1 |
separator
|
Text | Nein | , (Komma)
|
1 |
locale
|
Locale | Nein | None | 1 |
collection
- Die zu iterierende Liste.
list
- Eine Zeichenkette mit dem in
separator
angegebenen Trennzeichen.
item
- Die in
collection
angegebene Liste wird Element für Element durchlaufen. Mit dem in diesem Attribut angegebenen Namen, kann auf das aktuelle Element der Liste zugegriffen werden. Für das aktuelle Element können noch zusätzliche Informationen, die den Schleifendurchlauf betreffen abgefragt werden (siehe IteratorItem).
separator
- Das Trennzeichen der übergebenen Liste.
locale
- Dieses Attribut dient zur Auswahl der zu verwendenden Sprache bei mehrsprachigen Variablen.
Beispiele
sp:loop mit einem Collection-Objekt
Template Quelltext
<sp:loop collection="!{myPoolAnchor}.elements" item="it">
index: <sp:print name="it.index"/>, element-name: <sp:print name="it.name"/><br>
</sp:loop>
Ausgabe
index: 0, element-name: Artikel 1
index: 1, element-name: Artikel 2
index: 2, element-name: Artikel 3
index: 3, element-name: Artikel 4
sp:loop mit einer Zeichenkette und Trennzeichen
Template Quelltext
<sp:loop list="A|B|CD|EFG|xyz" separator="|" item="it">
index: <sp:print name="it.index"/>, token: <sp:print name="it"/><br>
</sp:loop>
Ausgabe
index: 0, token: A
index: 1, token: B
index: 2, token: CD
index: 3, token: EFG
index: 4, token: xyz