2009-10-06 6 views
0

Возьмите этот XSL:прохождение через петлю в XSL

<xsl:variable name="rowcount" select="count(../DBE:Object[@Class='A']/DBE:Attribute [@name='B']/DBE:Table/DBE:TableRow)"/> 
    No. of Rows: - <xsl:value-of select="$rowcount"/> 

я получаю выход как

No. of Rows: - 10 

Теперь, как написать цикл в XSL для прохождения каждой строки до 10-й строки?

Я хочу показать все строки таблицы до конца таблицы.

Итак, таким образом, должны пройти через петлю и отображение первой строки, а затем автоматически положение() или счетчик должен увеличиваться, а затем отобразить вторую строку во второй строке и так далее ....

Предположим, нет. строк в таблице = 10 Header -> ABC row1 -> 10 аЬс 20 row2 -> 20 Защиту 10 .... .... row10 -> 30 хуг 40

Пожалуйста, дайте мне знать, как достичь вышеуказанного результата?

ответ

3

Вы используете селектор над строками и затуханием: http://www.w3schools.com/Xsl/xsl_for_each.asp. Вы можете сохранить его под десятой строкой, используя классификатор типа [position() < 10].

1

Используйте это выражение XPath: ... /DBE:TableRow[position()<10]

+0

Я попытался ниже: - [код] Число строк: - Теперь я использовал -> [xsl: for-each select = "../ DBE: Object [@ Class = 'A']/DBE: Атрибут [@ name = 'B']/DBE: Таблица/DBE: TableRow [позиция() < $ rowcount> отображение некоторых атрибутов Как счетчик или позиция будут увеличиваться, и я могу правильно отобразить все строки? – 2009-10-07 06:12:14

+0

'position()' - это позиция элемента, поэтому он изменяется с каждым элементом, который каждый рассматривает. –

Смежные вопросы