Логин:

Пароль:

Форумы
Общие вопросы
Document Object Model
Обсуждаем конференцию
Web Usability (test)

Document Object Model

XML/XSLT

> Имеется дерево ... в общем любой длины и глубины.
>
> Как XSL'ем пройтись от одной из веток до самого верха?
> (нужную ветку находим по значению, т.е. branch/@prop='value')

Если просто, то нужно вызвать шаблон для элементов branch со спец. mode, чтобы не пересекался с основным шаблоном (по-умолчанию не должен бежать вверх, а вниз все-таки ;-). В этом-же шаблоне нужно просто аплаить родитель с такой-же модой...


Вызываеш шаблон таким образом:

<xsl:apply-templates select="//branch[@prop = 'value']" mode="to-parent"/>


А это и сам шаблон:

<xsl:template match="branch" mode="to-parent">
.do something...
.<xsl:apply-templates select="parent::branch" mode="to-parent"/>
</xsl:template>


Конечно ничего не проверял, но кажется, должно работать ;-)
СообщениеАвторДата
Gilmour28.01.2003 05:44
Leechy28.01.2003 13:47
Gilmour29.01.2003 05:59