Loop (SP-Tag)
Version vom 8. Juni 2008, 15:23 Uhr von Liebold (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-Tag wird für jedes Element der Liste ausgegeben. Mit dem Variablennamen, der über das Attribut item angegen wird, kann sowohl auf das aktuelle Loop-Element zugegriffen werden.
Der Loop-Tag kapselt die eigentlichen Element 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 | Nein | None | 1 |
list
|
Text | Nein | None | 1 |
item
|
Variable | Nein | None | 1 |
separator
|
Text | Nein | None | 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.item
ist ein IteratorItem-Objekt das die Liste-Elemente kapselt um weitere Attribute wie index zur Verfügung zu stellen..
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