Повторение :: Язык преобразований XSL (XSLT). Версия 1.0. Рекомендация W3C от 16 ноября 1999
Повторение :: Язык преобразований XSL (XSLT). Версия 1.0. Рекомендация W3C от 16 ноября 1999
8 Повторение
<!-- Category: instruction --><xsl:for-each select =
node-set-expression> <!-- Content: (xsl:sort*,
template) --></xsl:for-each>
Если результат имеет известную регулярную структуру, полезно иметь возможность указать это прямо в шаблоне для собираемых узлов. Инструкция xsl:for-each содержит шаблон, который обрабатывается для каждого узла, отобранного выражением, указанным в атрибуте select. Атрибут select является обязательным. Результатом обработки выражения должен быть набор узлов. При обработке шаблона выбранный узел берется в качестве текущего узла, а весь список собранных узлов берется в качестве текущего набора узлов. Узлы обрабатываются в том порядке как они следуют в документе, если нет указаний относительно сортировки (см. [10 Сортировка]).
Например, дан XML документ со следующей структурой
<customers>
<customer>
<name>...</name>
<order>...</order>
<order>...</order>
</customer>
<customer>
<name>...</name>
<order>...</order>
<order>...</order>
</customer>
</customers>
Следующий пример должен создать HTML документ, содержащий таблицу, где каждому элементу customer отводится отдельная строка.
<xsl:template match="/">
<html>
<head>
<title>Customers</title>
</head>
<body>
<table>
<tbody>
<xsl:for-each select="customers/customer">
<tr>
<th>
<xsl:apply-templates select="name"/>
</th>
<xsl:for-each select="order">
<td>
<xsl:apply-templates/>
</td>
</xsl:for-each>
</tr>
</xsl:for-each>
</tbody>
</table>
</body>
</html>
</xsl:template>
Назад |
Содержание |
Вперед
содержание | 2 | Amway в Тюмени
Используются технологии
uCoz