vtRepeat

(Basic, Pro, Master ab 1.0)

Wiederholt den nachfolgenden HTML-Code für alle Elemente einer Werteliste.

Verwendung

<!--{{vtRepeat: %Werteliste }}--> ... <!--{{vtEndRepeat}}-->
%Werteliste

Mehrere durch Komma, Pipesymbol (|) oder Zeilenschaltung getrennte Werte, oder eine Liste im JSON-Format. Die Liste kann direkt angegeben werden oder in Form eines Platzhalters. Bei einem Platzhalter ist darauf zu achten, dass dessen schließende Klammer durch ein Leerzeichen von der schließenden Klammer der vtRepeat-Anweisung getrennt ist.

Hinweise

Die Werteliste wird nach folgenden Regeln interpretiert (in dieser Reihenfolge):

  • Wenn eine Werteliste in [eckige Klammern] oder {geschweifte Klammern} eingeschlossen ist, wird sie als JSON-Liste bzw. JSON-Objekt interpretiert. Bei einem JSON-Objekt werden die einzelnen Eigenschaften durchlaufen, wobei sich der Name der Eigenschaft mittels {{vtItem:key}} und der Wert mittels {{vtItem:value}} ausgeben lässt.

  • Wenn der Liste ein Komma, ein Pipesymbol oder ein Prozentzeichen (als Stellvertreter für einen Zeilenumbruch) vorangestellt ist, wird dieses Zeichen als Trennzeichen verwendet.

  • Wenn in der Werteliste Zeilenschaltungen vorkommen, werden diese als Trennzeichen verwendet, auch wenn daneben noch Kommas oder Pipesymbole vorkommen.

  • Wenn keine Zeilenschaltungen, aber Pipesymbole vorkommen, wird nach den Pipesymbolen getrennt.

  • Wenn weder Zeilenschaltungen noch Pipesymbole vorkommen, wird nach Kommas getrennt.

  • Ansonsten wird die gesamte "Liste" als ein einzelnes Element interpretiert.

Innerhalb von vtRepeat lässt sich mit dem Platzhalter vtItem der aktuelle Listeneintrag ausgeben.

Beispiel 1

<ul>
    <!--{{vtRepeat: {Mitarbeiter} }}-->
        <li>{{vtItem}}</li>
    <!--{{vtEndRepeat}}-->
</ul>

Beispiel 2

<select name="Wochentag">
    <!--{{vtRepeat: Mo, Di, Mi, Do, Fr, Sa, So}}-->
        <option>{{vtItem}}</option>
    <!--{{vtEndRepeat}}-->
</select>

Beispiel 3

<!--{{vtSet: Liste = "a|b, c|d, e|f" }}-->

<ul>
    <!--{{vtRepeat: ,{vtGet:Liste} }}-->
        <li>{{vtItem}}</li>
    <!--{{vtEndRepeat}}-->
</ul>

Beispiel 4

<!--{{vtSet: Liste = '[
    { "value": "1", "text": "Montag" },
    { "value": "2", "text": "Dienstag" },
    { "value": "3", "text": "Mittwoch" },
    { "value": "4", "text": "Donnerstag" },
    { "value": "5", "text": "Freitag" }
]' }}-->

<select name="Wochentag">
    <!--{{vtRepeat: {vtGet:Liste} }}-->
        <option value="{{vtItem::value}}">{{vtItem:text}}</option>
    <!--{{vtEndRepeat}}-->
</select>

Siehe auch