xmlhack.ru XML-форумы
Обсуждение XML и связанных с ним технологий

<xsl:for-each select="$param"> - как правиль


Автор Сообщение
добрый слоник
Гость




[13545] Пт Фев 06, 2009 19:49
<xsl:for-each select="$param"> - как правиль
Всем доброго здравия
Вопрос: подобную конструкцию можно реализовать:
...
<xsl:param name="$param">someXPath</xsl:param>
...
<xsl:for-each select="$param">
....

Надо для того, чтобы из js вызывать шаблон с параметром, в виде XPath - выражения, а шаблон по этому выражению делал выборку.
Fireball
Наставник

Зарегистрирован: 26.02.2008
Сообщения: 282

[13546] Пт Фев 06, 2009 23:27

А попробовать и посмотреть, что получится? Smile

В данном случае, в $param окажется текстовая нода и по ней будет проходить for-each...
добрый слоник
Гость




[13547] Сб Фев 07, 2009 01:32

дык, а можно ли сделать так, чтоб процессор, воспринимал это как Xpath-выражение?

типо

Код:


<xsl:call-template name="name">
<xsl:with-param name="param">child::node()[@myAtt = 8]</xsl:with-param>
</xsl:call-template>


и в шаблоне

Код:


<xsl:for-each select="$param"> // здесь мне надо чтобы вычислялось
                               // Xpath-выражение child::node()[@myAtt = 8],
                               // так, как было бы, если параметр $param , был объявлен:
                               // <xsl:param select="child::node()[@myAtt = 8]"/> 
.......

olpa
Любитель

Зарегистрирован: 23.04.2002
Сообщения: 981
Откуда: Санкт-Петербург
Посетить сайт автора
[13551] Пн Фев 09, 2009 10:07

Цитата:

дык, а можно ли сделать так, чтоб процессор, воспринимал это как Xpath-выражение?


Нет, нельзя.

Но можно так:

Код:

xsl:for-each select="*[name()=$param]"