Jelly Tags
Verwenden Sie Jelly, um XML in HTML umzuwandeln.
Sehen Sie sich diese Einführungsvideos an, um mehr über die Verwendung von Jelly in Now Platformzu erfahren.
Jelly-Tags
- if
- Beschreibung: Das
if-Tag ist genau das, wonach es aussieht, einif-Tag. Dies ist wie eineif-Anweisung in jeder Programmiersprache, aber bedenken Sie, dass es kein„elseif“-Tag und kein „else“-Tag gibt. Wenn Sie eine solche Struktur erstellen möchten, versuchen Sie es mit der Syntaxwählen/wenn/sonst. - Parameter:
test– Die auszuwertende Bedingung, um zu bestimmen, ob der Block ausgeführt wird. - Beispiel:
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", true); now_GR.query(); now_GR; </g:evaluate> <j:if test="${!jvar_now_GR.hasNext()}"> We did not find any active incidents. </j:if> <j:if test="${jvar_now_GR.next()}"> We found ${jvar_now_GR.getRowCount()} active incidents. </j:if>
- Beschreibung: Das
- while
- Beschreibung: Das Tag „
while“ führt eine „while“-Schleife aus. - Parameter:
test– Die auszuwertende Bedingung, um zu bestimmen, ob die Anweisung eine Schleife durchläuft. Dies sollte ein in${}oder$[]eingeschlossener Ausdruck sein, der als „true“ oder „false“ ausgewertet wird. - Beispiel:
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", true); now_GR.query(); now_GR; </g:evaluate> <j:while test="${jvar_now_GR.next()}"> <a href="incident.do?sys_id=${jvar_now_GR.getValue('sys_id')}">${jvar_now_GR.getValue('number')}</a> </j:while>
- Beschreibung: Das Tag „
- set
- Beschreibung: Das Tag
setlegt eine Variable fest. - Parameter:
var: die festzulegende Variable. Häufig stellt das System diesen Variablen aus Gründen der Konsistenzjvar_ voran.value: der Wert, der fürvarfestgelegt werden soll. Dies ist häufig ein Ausdruck, der in${}oder$[]eingeschlossen ist.defaultValue– Wenn der Wert NULL oder leer ist, wird dieser Wert in die Variableeingefügt.
- Beispiel:
<j:set var="jvar_incident_number" value="${jvar_now_GR.getValue('number')}"/>
- Beschreibung: Das Tag
- set_if
- Beschreibung: Das Tag
set_iflegt eine Variable basierend auf einem Test fest. Dieses Tag ähnelt demternärenOperator in anderen Programmiersprachen (var =<test> ?<if_true> :<if_false> ). - Parameter:
var: die festzulegende Variable. Häufig stellt das System diesen Variablen aus Gründen der Konsistenzjvar_ voran.test: die auszuwertende Bedingung, die entscheidet, ob die Anweisung den Wert „true“ oder den Wert „false“ hat. Dies sollte ein in${}oder$[]eingeschlossener Ausdruck sein, der als „true“ oder „false“ ausgewertet wird.true: der Wert, auf den die Variable gesetzt werden soll, wenntestden Werttrueermittelt. Dieser Parameter ist optional. Wenn das Feld leer ist und der Test „wahr“ ergibt, bleibt die Variable leer.false– Der Wert, auf den die Variable festgelegt werden soll, wenn derTest„false“ ergibt. Dieser Parameter ist optional. Wenn das Feld leer ist und „test“ das Ergebnis „false“ liefert, bleibt die Variable leer.
- Beschreibung: Das Tag
- choose
- Beschreibung: Das Tag „
choose“ beginnt einen Codeblock „choose“. Dies ähnelt derif-elseif-else-Syntax in den meisten Programmiersprachen. Mit einem Tagwählenkönnen Sie Tags des Typs „when“ und „sonst“ verwenden, um andere Codeblöcke anzugeben. - Parameter: Keine
- Beispiel:
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Beschreibung: Das Tag „
- when
- Beschreibung: Das Tag „
when“ wird in einem Auswahlblock verwendet, um eine Bedingung anzugeben. Dieses Tag ähnelt einemif-oderElseif-Tag in, in dem eine Bedingung angegeben, der innere Inhalt ausgeführt wird und dann am Ende ein Bruch impliziert wird, um dasif-elseif-Konstrukt zu verlassen. - Parameter:
test– Die auszuwertende Bedingung, um zu bestimmen, ob die Anweisung eine Schleife durchläuft. Dies sollte ein in${}oder$[]eingeschlossener Ausdruck sein, der als „true“ oder „false“ ausgewertet wird. - Beispiel:
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Beschreibung: Das Tag „
- otherwise
- Beschreibung: Das Tag „
Andernfalls“ wird in einem Block vom Typ „Choose/When/Sonst“ verwendet und entspricht dem „else“- oder demStandardfall. - Parameter: Keine
- Beispiel:
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Beschreibung: Das Tag „
Glide-Tags
- evaluate
- Beschreibung: Das Tag „
evaluate“ wertet JavaScript-Code aus (Serverseite) und macht Variablen für zukünftigen Code sichtbar. Im Gegensatz zu anderen Tagswertetdas Tag „evaluate“ den Inhalt des Tags als serverseitiges JavaScript aus.Der Kontext ist der gleiche wie der von Skripteinbindungen im System. Andere Skripteinbindungen, globale Business Rules, GlideRecord-, GlideSystem-und Jelly-Variablen (mit Präfix „jelly“; wenn der Parameter
„jelly“ = „true“) sind verfügbar. - Parameter:
var: der Name der Variablen, die als Ergebnis des Skripts gesetzt werden soll.object– Bei Festlegung auf „true“ wird das Ergebnis des Ausdrucks als Objekt und nicht als Primitivvariable (Variablenwerte vom Typ „Zeichenfolge“ oder „Integer“) behandelt.jelly: Ist der Parameter auftruegesetzt, dürfen im Skript Jelly-Kontextvariablen referenziert werden.expression: ein Ausdruck, der auf den invarangegebenen Wert angewendet werden soll. Der Ausdruck kann an zwei Stellen platziert werden. Erstens kann es sich um ein Attribut des Tags „evaluate“ selbst handeln. Zum anderen kann der Inhalt zwischen öffnendem und schließendem Tag der Ausdruck sein. Die letzte Zeile des Ausdrucks ist der Wert, der anvarübergeben wird.
- Beispiel:
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", "true"); now_GR.query(); now_GR; // this is the variable put into the variable jvar_now_GR </g:evaluate><g:evaluate var="jvar_now_GR" object="true" expression=" var now_GR = new GlideRecord('incident'); now_GR.addQuery('active', 'true'); now_GR.query(); now_GR; // this is the variable put into the variable jvar_now_GR" />
- Beschreibung: Das Tag „
- messages
- Beschreibung: Das
Nachrichten-Tag hilft bei der Übersetzung. Wenn gs.getMessage() an beliebiger Stelle auf einer Seite aufgerufen wird, gibt es zwei mögliche Stellen, an denen die Übersetzung gefunden wird. Zuerst prüft die Seite einen lokalen Cache mit Übersetzungen. Dann sendet die Seite einen AJAX-Aufruf an den Server, um die Übersetzung von dort abzurufen. „g:messages“ ermöglicht Seiten das Zwischenspeichern bestimmter Nachrichten. - Parameter: Keine
- Beispiel:
<g:messages> Yes No Cancel </g:messages>
- Beschreibung: Das
- breakpoint
- Beschreibung: Wenn das
Haltepunkt-Tag aufgerufen wird, wird eine Liste aller Variablen in Jelly zum aktuellen Zeitpunkt mit ihren jeweiligen Werten gedruckt. Ist eine bestimmte Variable angegeben, gibt das Tag die angeforderte Variable und deren Wert zurück. Die Ausgabe wird im Systemprotokoll gespeichert. - Parameter:
var- (Optional) Die Variable, für die der Wert protokolliert werden soll. Wennvarnicht angegeben ist, werden alle Variablen im Protokoll gespeichert. - Beispiel:
<g:breakpoint /><g:breakpoint var="sysparm_view"/>
- Beschreibung: Wenn das
- no_escape
- Beschreibung: Das System versieht Ausgaben als Sicherheitsmaßnahme standardmäßig mit Escape-Zeichen. Vor Ausgaben innerhalb von Tags des Typs
no_escapewird kein Escape-Zeichen gesetzt. Verwenden Sie diese Tags mit Bedacht. Werden hier Benutzereingaben angezeigt, kann das zu einer Schwachstelle auf der Seite führen. - Parameter: Keine
- Beispiel (Phase 1) – Deaktiviert das automatische Ausgabe-Escaping aller enthaltenen ${}-Ausdrücke:
<g:no_escape> ${jvar_raw_html_data} </g:no_escape> - Beispiel (Phase 2) – Verwenden Sie
NOESC, um die Escaping-Funktion für die angegebene Zeichenfolge zu deaktivieren. Dies impliziert, dass der Ausdruck eine Zeichenfolge ergeben muss.<g:no_escape>$[NOESC:jvar_expr]</g:no_escape>Informationen zur Evaluierung von Phase 1 und Phase 2 finden Sie in den Jelly-Einführungsvideos, die am Anfang dieses Abschnitts aufgeführt sind.
- Beschreibung: Das System versieht Ausgaben als Sicherheitsmaßnahme standardmäßig mit Escape-Zeichen. Vor Ausgaben innerhalb von Tags des Typs
- macro_invoke
- Beschreibung: Das Tag
„macro_invoke“ruft ein UI-Makro auf, das Sie in der Datenbank angegeben haben. Sie können UI-Makros auch aufrufen, indem Sie sie im Namen des Tags angeben. Haben Sie beispielsweise ein UI-Makro namens „my_macro“, können Sie dieses Makro mit dem Tag<g:my_macro/>aufrufen. Diesbezügliche Informationen finden Sie unter UI-Makros. - Parameter:
macro: der Name des auszuführenden UI-Makros. Wenn Ihr Tag-Nameg:macro_invoke lautet, gibt das Attribut „macro“ den Namen des Makros an. Wenn der Tag-Name den Namen des Makros enthält, muss kein Attribut „macro“ angegeben werden.- Andere Attribute: Für jedes von Ihnen angegebene Attribut wird eine Variable mit dem gleichen Namen im Kontext des UI-Makros mit dem Präfix
jvar_ verfügbar gemacht.
- Beispiel:
<!-- Will invoke the contents of the UI macro named "sample_macro", which will have the variable jvar_message available within it--> <g:macro_invoke macro="sample_macro" message="This is a sample macro variable." /><!-- Will invoke the contents of the UI macro named "sample_macro", which will have the variable jvar_message available within it--> <g:sample_macro message="This is a sample macro variable." />
- Beschreibung: Das Tag
- if_polaris
- Beschreibung: Das Tag
if_polarisüberprüft, ob Next Experience für die aktuelle Seite aktiviert ist. Es muss mindestens eines der untergeordneten Tags enthalten<g:then /> oderg:else />. - Parameter: Keine
- Beispiel:
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Beschreibung: Das Tag
- dann
- Beschreibung: Das Tag
thenwird innerhalb einesif_polaris-Blocks verwendet, um den Seiteninhalt festzulegen, wenn Next Experience aktiviert ist. - Parameter: Keine
- Beispiel:
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Beschreibung: Das Tag
- sonst
- Beschreibung: Das Tag „
else“ wird in einemif_polaris-Block verwendet, um den Seiteninhalt festzulegen, wenn Next Experience nicht aktiviert ist. - Parameter: Keine
- Beispiel:
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Beschreibung: Das Tag „