Использование XSLT с одним типом переменной - PullRequest
1 голос
/ 24 августа 2011

Есть ли способ использовать только один способ использования переменной в XSLT?

Например:

<xsl:variable name="myvar" select="title" />

, который выбирает заголовок из моего xml, тогда я хотел быиспользуйте его в шаблоне:

<h2 title="{$myvar}">{$myvar}</h2>

Однако он показывает только атрибут заголовка.И когда я делаю это так:

<h2 title="<xsl:value-of select='$myvar'>"><xsl:value-of select='$myvar'></h2>

Это работает только наоборот.

Так что мой вопрос:

Есть ли один способ, который работаетдля атрибута и содержания?

Ответы [ 2 ]

2 голосов
/ 24 августа 2011

Да, вы можете избежать AVT:

<h2>
 <xsl:attribute name="title">
  <xsl:value-of select=$myvar/>
 </xsl:attribute>
 <xsl:value-of select=$myvar/>
</h2>

Но я думаю, что проще использовать AVT и xsl:value-of правильно:

<h2 title="{$myvar}">
 <xsl:value-of select=$myvar/>
</h2>
1 голос
/ 24 августа 2011

XSLT использует синтаксис XML, поэтому в атрибуте не может быть инструкции xsl: value-of: следовательно, запись AVT использует фигурные скобки.Было бы неплохо, если бы язык допускал фигурные скобки и внутри текстовых узлов, но это не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...