Оборачивание каждого символа в тег
Материал из Umicms
Версия от 10:45, 13 июня 2018; Whoa (обсуждение | вклад)
Статья предоставлена партнером UMI.CMS Шириевым Артуром
Актуально для версии 18 и xslt-шаблонизатора.
Часто бывает нужно обернуть каждую цифру числа в какой-нибудь тег, например, для анимации различных счетчиков.
Сделать такое можно с помощью рекурсивного вызова внутри шаблона. Ниже пример реализации на XSLT:
<xsl:template name="wrap-each-character">
<xsl:param name="string"/>
<xsl:if test="string-length($string) > 0">
<span><xsl:value-of select="substring($string,1,1)"/></span>
<xsl:call-template name="wrap-each-character">
<xsl:with-param name="string" select="substring($string,2)"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
Тег span можно заменить на любой другой нужный тег.