Переменная xsl не работает в xsl.

В этом "$PAGE_SCOPE[title]" будет отображаться заголовок страницы. Я хочу отображать различные заголовки в зависимости от заголовка, поэтому я пытаюсь получить заголовок страницы в переменной, эта переменная отображает заголовок в теге абзаца, но это не работает в цикле когда.

<xsl:variable name="PageTitle" select="'$PAGE_SCOPE[title]'" />
<xsl:variable name="test"><xsl:value-of select="$PageTitle" /></xsl:variable>
<p><xsl:value-of select="$test" /></p>

<xsl:choose>
<xsl:when test="$test='RAQ'">
    <h1 class="h3"><strong>.....</strong></h1>
</xsl:when>

<xsl:otherwise>
    <h1 class="h3"><strong>Error</strong></h1>
</xsl:otherwise>
</xsl:choose>

любые указатели были бы полезны.

1 ответ

Предполагая, что $PAGE_SCOPE[title] работает и выполняет то, что обычно должно быть (кавычки выше странные), действительно ли это возвращает элемент? Если он возвращает строковое значение, то это должно работать, но если значение вашей переменной на самом деле является узлом, то это, вероятно, объяснит вашу проблему.

Попробуйте использовать string($test) для сравнения. Кроме того, вы можете рассмотреть возможность добавления normalize-space() просто чтобы убедиться, что у вас нет пробелов, которые неожиданно обнаружились.

Другие вопросы по тегам