Проверка наличия символа в цене — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
Строка 19: Строка 19:
  
  
[[Категория:Шаблонизаторы]][[Категория:Верстка в XSLT]]
+
[[Категория:Верстка в XSLT]]

Текущая версия на 20:29, 4 июня 2013

Задача:Проверка наличия символа в строке, это может пригодиться, в случае если, например, в цене точки нет, то выводить после цены .- , что означает окончательную цену.

Решение:Для реализации данной задачи, будем использовать функцию contains - boolean contains (string, string), которая принимает на вход два строковых аргумента и возвращает true, если первая строка содержит вторую и false в противном случае.

Пример обработка узла price со значением цены:

                <xsl:choose>
                  <xsl:when test="not(contains(price, '.'))">
                    <xsl:value-of select="format-number(price, '### ### ### ###')" />.–</xsl:when>
                  <xsl:otherwise>
                    <xsl:value-of select="format-number(price, '### ### ### ###')" />
                  </xsl:otherwise>
                </xsl:choose>

для такого значения: 47990 результат будет таким: 47 990.–