Книга: XSLT

function-available()

function-available()

При помощи функции XSLT 1.0 function-available можно проверить наличие функции расширения:

boolean function-available(function-name)

Функция принимает в качестве параметра имя искомой функции и, если функция доступна, возвращает истину, если нет — ложь.

Следующий пример мы уже рассматривали в главе 5. В этом случае я хочу выполнить ряд математических операций при помощи функции расширения starpowder:calculate, и если она отсутствует, вывести в результирующий документ текст «Sorry, can't do math today.» (Извините, сегодня математические вычисления не работают.). Можно, конечно, также прекратить обработку и вывести сообщение об ошибке при помощи элемента <xsl:message>:

<xsl:choose xmlns:starpowder="http://www.starpowder.com">
 <xsl:when test="function-available('starpowder:calculate')">
  <xsl:value-of select="starpowder:calculate('2+2')"/>
 </xsl:when>
 <xsl:otherwise>
  <xsl:text>Sorry, can't do math today.</xsl:text>
 </xsl:otherwise>
</xsl:choose>

Оглавление книги


Генерация: 0.815. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз