Вот мой XSLT:Переменная область в XSLT?
<xsl:choose>
<xsl:when test="string-length(/*/location/name)">
<xsl:variable name="pagurl">/location/<xsl:value-of select="/*/location/@id" />comments</xsl:variable>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="pagurl">/state/<xsl:value-of select="/*/state/@code" />/comments</xsl:variable>
</xsl:otherwise>
</xsl:choose>
<div class="pagination_outer" id="pager">
<xsl:call-template name="pagination">
<xsl:with-param name="url"><xsl:value-of select="$pagurl"/></xsl:with-param>
</xsl:call-template>
</div>
Я делаю следующее:
- Присвоение переменной
$pagurl
до значения на основе длины строки. - Попытка использовать переменную внутри вызова
<xsl:with-param name="url"><xsl:value-of select="$pagurl"/></xsl:with-param>
Когда я включаю этот призыв страницы никогда не кажется, чтобы закончить загрузку, однако, когда я не использую его загрузки страницы просто отлично. Я предполагаю, что есть ошибка в моем использовании этого.
Не думаю, что необходимо посмотреть pagination template
, так как он отлично работает, если я жестко задаю значение.
Предложения?
Похоже, вы пытаетесь [выполнить динамический XPath] (http://stackoverflow.com/questions/4630023/dynamic-xpath-in-xslt)? – har07
@ har07, нет, это ничего сложного - просто [обзор] (http://stackoverflow.com/a/35763135/290085). – kjhughes