Set (SP-Tag): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Sed (Diskussion | Beiträge) |
|||
Zeile 9: | Zeile 9: | ||
==Beschreibung== | ==Beschreibung== | ||
Mit dem Set-Tag können eigene Variablen innerhalb eines Templates definiert werden. Mit Hilfe des Attributes [[scope]] kann der Gültigkeitsbereich der Variable bestimmt werden. Mit sp:set können [[Text|Zeichenketten]], [[Expression|Expressions]] oder [[Object|Objekte]] (als Attribut angegeben) für eine Variable gesetzt werden. Bei overwrite gleich false, wird die Variable nur gesetzt wenn sie noch nicht existiert oder leer ist. | Mit dem Set-Tag können eigene Variablen innerhalb eines Templates definiert werden. Mit Hilfe des Attributes [[scope]] kann der Gültigkeitsbereich der Variable bestimmt werden. Mit sp:set können [[Text|Zeichenketten]], [[Expression|Expressions]] oder [[Object|Objekte]] (als Attribut angegeben) für eine Variable gesetzt werden. Bei overwrite gleich false, wird die Variable nur gesetzt wenn sie noch nicht existiert oder leer ist. | ||
+ | |||
+ | Werte können über die Attribute value, expression, condition oder object gesetzte werden. Alternativ ist es auch möglich den Wert im Body des Tags zu setzten. Hierbei wird zunächst der Body ausgeführt und das Ergebnis verwendet | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <sp:set name="output">Die Aufgabe mit Ergebnis: <sp:print name="abc"/></sp:set> | ||
+ | </source> | ||
==Attribute== | ==Attribute== | ||
Zeile 23: | Zeile 29: | ||
| <code>value</code> | | <code>value</code> | ||
| [[Text]] | | [[Text]] | ||
− | | Ja, oder expression bzw.object oder sp:set als BodyTag (siehe Beispiel) | + | | Ja, oder expression bzw. condition bzw.object oder sp:set als BodyTag (siehe Beispiel) |
| None | | None | ||
| 1 | | 1 | ||
Zeile 29: | Zeile 35: | ||
| <code>expression</code> | | <code>expression</code> | ||
| [[Expression]] | | [[Expression]] | ||
− | | Ja oder value bzw object | + | | Ja oder value bzw. object bzw. condition |
| None | | None | ||
| 1 | | 1 | ||
Zeile 35: | Zeile 41: | ||
| <code>condition</code> | | <code>condition</code> | ||
| [[Condition]] | | [[Condition]] | ||
− | | Ja oder value bzw object | + | | Ja oder value bzw. object bzw. expresson |
| None | | None | ||
| 2 | | 2 | ||
Zeile 41: | Zeile 47: | ||
| <code>object</code> | | <code>object</code> | ||
| [[Attribute]] | | [[Attribute]] | ||
− | | Ja oder value bzw. expression | + | | Ja oder value bzw. expression bzw. condition |
| None | | None | ||
| 1 | | 1 |
Version vom 29. Oktober 2008, 16:16 Uhr
Name
<sp:set> - Setzt Variablen
Syntax
<sp:set name="variable" value="Her name is ${name}"/>
Beschreibung
Mit dem Set-Tag können eigene Variablen innerhalb eines Templates definiert werden. Mit Hilfe des Attributes scope kann der Gültigkeitsbereich der Variable bestimmt werden. Mit sp:set können Zeichenketten, Expressions oder Objekte (als Attribut angegeben) für eine Variable gesetzt werden. Bei overwrite gleich false, wird die Variable nur gesetzt wenn sie noch nicht existiert oder leer ist.
Werte können über die Attribute value, expression, condition oder object gesetzte werden. Alternativ ist es auch möglich den Wert im Body des Tags zu setzten. Hierbei wird zunächst der Body ausgeführt und das Ergebnis verwendet
<sp:set name="output">Die Aufgabe mit Ergebnis: <sp:print name="abc"/></sp:set>
Attribute
Name | Type | Required | Default | ab IES Version |
---|---|---|---|---|
name
|
Variable | Ja | None | 1 |
value
|
Text | Ja, oder expression bzw. condition bzw.object oder sp:set als BodyTag (siehe Beispiel) | None | 1 |
expression
|
Expression | Ja oder value bzw. object bzw. condition | None | 1 |
condition
|
Condition | Ja oder value bzw. object bzw. expresson | None | 2 |
object
|
Attribute | Ja oder value bzw. expression bzw. condition | None | 1 |
default
|
Text | Nein | None | 2.0.2 |
overwrite
|
Condition | Nein | None | 1 |
locale
|
Locale | Nein | None | 1 |
scope
|
Scope | Nein | request | 1 |
name
- Name der neuen Variable.
value
- Zu setzender Wert. Dieser wird immer als Zeichenkette ausgewertet.
expression
- Die Expression wird ausgewertet und als Wert in die Variable geschrieben.
condition
- Die Condition wird ausgewertet und als Bedingung in die Variable geschrieben.
object
- Evaluiert das Attribut und setzt den evaluierten Wert. Im Gegensatz zu
value
wird hier das Object gespeichert und nicht der Text.
default
- Der Text, der verwendet wird, wenn der Inhalt von value, expression und body leer sind.
overwrite
- Bestimmt, ob eine evtl. vorhandene Variable überschrieben werden soll. true bzw. false.
locale
- Dieses Attribut dient zur Auswahl der zu verwendende Sprache bei mehrsprachiger Variablen.
scope
- Gültigketisbereich, in dem die Variable definiert ist. Möglich sind page und request.
Beispiele
Variablen setzten
Template Quelltext
<sp:set name="a" value="10"/>
<sp:set name="b" value="20"/>
<sp:set name="c" expression="${a} + ${b}"/>
<sp:set name="abc" value="a + b = ${c}"/>
<sp:set name="output">Die Aufgabe mit Ergebnis: <sp:print name="abc"/></sp:set>
<sp:print name="output"/>
Ausgabe
Die Aufgabe mit Ergebnis: a + b = 30
Conditions beim set-Tag
<sp:set name="even" condition="${myValue}%2 == 0"/>
<sp:if condition="${even}">gerade</sp:if>