Jelly Tags

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 7 Minuten Lesedauer
  • 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, ein IF -Tag. Dies entspricht einer if -Anweisung in jeder Programmiersprache. Beachten Sie jedoch, dass es kein Else-F- Tag und kein Else -Tag gibt. Wenn Sie eine solche Struktur erstellen möchten, versuchen Sie es mit der Syntax „ Wä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>
      
    while
    • Beschreibung: Das während- Tag führt eine währende Schleife aus.
    • Parameter: test – Die auszuwertende Bedingung, um zu bestimmen, ob die Anweisung durchlaufen wird. Dies muss ein in ${} oder $[] eingeschlossener Ausdruck sein, der als „wahr“ oder „falsch“ 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>
    set
    • Beschreibung: Das festgelegte Tag legt eine Variable fest.
    • Parameter:
      • var: die festzulegende Variable. Häufig stellt das System diesen Variablen aus Konsistenzgründen das Präfix jvar_ voran.
      • value: der Wert, der für var festgelegt werden soll. Dies ist häufig ein in ${} oder $[]eingeschlossener Ausdruck.
      • 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')}"/>
    set_if
    • Beschreibung: Das Tag „set_if“ legt eine Variable basierend auf einem Test fest. Dieses Tag ähnelt dem ternären Operator in anderen Programmiersprachen (var =<test> ?<if_true> :<if_false> ).
    • Parameter:
      • var: die festzulegende Variable. Häufig stellt das System diesen Variablen aus Konsistenzgründen das Präfix jvar_ voran.
      • test: die auszuwertende Bedingung, die entscheidet, ob die Anweisung den Wert „true“ oder den Wert „false“ hat. Dies muss ein in ${} oder $[] eingeschlossener Ausdruck sein, der als „wahr“ oder „falsch“ ausgewertet wird.
      • true: der Wert, auf den die Variable gesetzt werden soll, wenn test den Wert true ermittelt. Dieser Parameter ist optional. Wenn das Feld also leer ist und der Test als „wahr“ ausgewertet wird, bleibt die Variable leer.
      • falsch – Der Wert, auf den die Variable festgelegt wird, wenn der Test als „falsch“ ausgewertet wird. Dieser Parameter ist optional. Wenn das Feld leer ist und „test“ das Ergebnis „false“ liefert, bleibt die Variable leer.
    choose
    • Beschreibung: Das Auswahl -Tag beginnt einen Auswahlcode-Block. Dies ähnelt der Syntax „if-elseif-else“ in den meisten Programmiersprachen. Mit einem Auswahl -Tag können Sie die Tags „Wann“ und „Andernfalls “ 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>
    when
    • Beschreibung: Das „Wenn “-Tag in einem Auswahlblock verwendet wird, um eine Bedingung anzugeben. Dieses Tag ähnelt einem if- oder Elseif-Tag insofern, als es eine Bedingung angibt, den inneren Inhalt ausführt und dann einen Umbruch am Ende impliziert, um das if-elseif -Konstrukt zu verlassen.
    • Parameter: test – Die auszuwertende Bedingung, um zu bestimmen, ob die Anweisung durchlaufen wird. Dies muss ein in ${} oder $[] eingeschlossener Ausdruck sein, der als „wahr“ oder „falsch“ 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>
    otherwise
    • Beschreibung: Das Tag „Andernfalls“ wird innerhalb eines Auswahl-/Wann-/Andernfalls -Blocks verwendet und entspricht dem Else- oder Standardfall.
    • 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>

    Glide-Tags

    evaluate
    • Beschreibung: Das Auswertungstag wertet JavaScript-Code aus (serverseitig) und macht Variablen für zukünftigen Code sichtbar. Im Gegensatz zu anderen Tags wertet das Auswertungs- Tag den darin enthaltenen Inhalt als serverseitiges JavaScript aus.

      Der Kontext ist der gleiche wie der von Skripteinbindungen im System. Andere Skripteinbindungen, globale Business-Regeln, GlideRecord-, GlideSystem-und Jelly-Variablen (mit dem Präfix jelly. wenn der Parameter jelly="true" festgelegt ist) sind verfügbar.

    • Parameter:
      • var: der Name der Variablen, die als Ergebnis des Skripts gesetzt werden soll.
      • Objekt : Bei Festlegung auf „wahr“wird das Ergebnis des Ausdrucks als Objekt anstelle einer primitiven Variablen (Zeichenfolgen- oder Ganzzahl-Variablenwerte) behandelt.
      • jelly: Ist der Parameter auf true gesetzt, dürfen im Skript Jelly-Kontextvariablen referenziert werden.
      • expression: ein Ausdruck, der auf den in var angegebenen Wert angewendet werden soll. Der Ausdruck kann an zwei Stellen platziert werden. Erstens kann es sich um ein Attribut im Bewertungs -Tag 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 an var ü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" />
    messages
    • Beschreibung: Das Nachrichten -Tag hilft bei der Übersetzung. Wenn gs.getMessage() an beliebiger Stelle auf der Seite aufgerufen wird, gibt es zwei mögliche Stellen, an denen die Übersetzung zu finden ist. 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. Mit g:messages können Seiten bestimmte Nachrichten zwischenspeichern.
    • Parameter: Keine
    • Beispiel:
      <g:messages>
        Yes
        No
        Cancel
      </g:messages>
    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. Wenn var nicht angegeben ist, werden alle Variablen im Protokoll gespeichert.
    • Beispiel:
      <g:breakpoint />
      <g:breakpoint var="sysparm_view"/>
    no_escape
    • Beschreibung: Das System versieht Ausgaben als Sicherheitsmaßnahme standardmäßig mit Escape-Zeichen. Vor Ausgaben innerhalb von Tags des Typs no_escape wird 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 die automatische Ausgabe von allen enthaltenen ${}-Ausdrücken mit Escape-Zeichen:
      <g:no_escape>
       ${jvar_raw_html_data}
      </g:no_escape>
    • Beispiel (Phase 2) – Verwenden Sie NOESC, um die Escape-Zeichen für die angegebene Zeichenfolge zu deaktivieren. Dies impliziert, dass der Ausdruck als Zeichenfolge ausgewertet werden muss.
      <g:no_escape>$[NOESC:jvar_expr]</g:no_escape>

      Informationen zur Bewertung der Phasen 1 und 2 finden Sie in den Einführungsvideos zu Jelly am Anfang dieses Abschnitts.

    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. Informationen hierzu finden Sie unter UI-Makros.
    • Parameter:
      • macro: der Name des auszuführenden UI-Makros. Wenn Ihr Tag-Name g:macro_invokelautet, 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 ist eine Variable mit diesem Namen im Kontext des UI-Makros verfügbar, mit dem Präfix jvar_.
    • 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." />
    if_Polaris
    • Beschreibung: Das Tag „if_Polaris“ überprüft, ob Next Experience für die aktuelle Seite aktiviert ist. Sie muss mindestens eines der untergeordneten Tags enthalten<g:then /> oder g: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>
      
    dann
    • Beschreibung: Das Tag „thenn“ wird innerhalb eines if_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>
      
    sonst
    • Beschreibung: Das Else- Tag wird innerhalb eines if_Polaris- Blocks 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>