|
Xslt получение данных из попарных строк таблицы
|
|||
---|---|---|---|
#18+
Добрый день... Упрощенно есть таблица <table> <body> <tr> <td>Иванов</td> <td>Петров</td> </tr> <tr> <td> <ul> <li>тру-ля-ля</li> <li>тра-та-та</li> <li>фа-фа-ля-ля</li> </ul> </td> </tr> далее в том же духе, т.е. связанная инфа лежит в попарных строках. Нужно получить xslt-шаблоном тег вида (на имена тегов и атрибутов не смотрим), например <коллектив композитор="Иванов" поэт="Петров"> <song namе="тру-ля-ля"/> <song namе="тра-та-та"/> <song namе="фа-фа-ля-ля"/> </коллектив> Или <песня композитор="Иванов" поэт="Петров" namе="тру-ля-ля"> <песня композитор="Иванов" поэт="Петров" namе="тра-та-та"> <песня композитор="Иванов" поэт="Петров" namе="фа-фа-ля-ля"> Никак не получается это сделать... С точностью до смысла по второму варианты пытался изобразить что-то типа <xsl:for-each select="//table/tr"> <xsl:choose> <xsl:when test="count(td)>1"> <xsl:variable name="param"> <value form="{normalize-space(td[1]/text())}" doss="{normalize-space(td[2]/text())}"/> </xsl:variable> </xsl:when> <xsl:otherwise> <xsl:for-each select="td[1]/ul/li"> <row form="{exsl:node-set($param)/value/@form}" doss="{exsl:node-set($param)/value/@doss}" name="{normalize-space(text())}"/> </xsl:for-each> </xsl:otherwise> </xsl:choose> </xsl:for-each> Но знаний не хватило... выдает ошибку, видимо, из-за видимости переменной... гуглить тоже не получилось. Помогите, пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2019, 18:38 |
|
Xslt получение данных из попарных строк таблицы
|
|||
---|---|---|---|
#18+
Подпол Код: xml 1. 2. 3. 4. 5.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Подпол Код: xml 1. 2. 3.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2019, 14:08 |
|
|
start [/forum/topic.php?fid=14&msg=39866565&tid=1331917]: |
0ms |
get settings: |
27ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
252ms |
get tp. blocked users: |
2ms |
others: | 2814ms |
total: | 3182ms |
0 / 0 |