|
|
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
Есть xsl файлик, который разгребает xml с погодой и выводит в html мне на сайт. Но вместо неудобных цифр я вывожу картинки с солнышком, облаками и т.д. Все устраивает, но немного нелепо, когда погода описывает ночь, а картинка солнце. Хочу, в зависимости от времени суток подставлять либо дневной рисунок, либо ночной. На сколько я понял, нужно использовать choose и otherwise, но информация о времени суток лежит в другом темплейте, как сравнивать данные из разных темплейтов? Вот фрагмент кода, помогите плз. ..... <xsl:if test="@hour = 3"> ночь</xsl:if> <xsl:if test="@hour = 9"> утро</xsl:if> <xsl:if test="@hour = 15"> день</xsl:if> <xsl:if test="@hour = 21"> вечер</xsl:if> </td></tr> <tr> <td><xsl:apply-templates select="PHENOMENA"/></td> <td><xsl:apply-templates select="TEMPERATURE"/><br/> <xsl:apply-templates select="WIND"/></font></td> </tr> </xsl:template> <xsl:template match="PHENOMENA"> <xsl:if test="@cloudiness = 0"> <img src="images/weather/pheno0.gif"></img></xsl:if> <xsl:if test="@cloudiness = 1"> <img src="images/weather/pheno1.gif"></img></xsl:if> <xsl:if test="@cloudiness = 2"> <img src="images/weather/pheno2.gif"></img></xsl:if> <xsl:if test="@cloudiness = 3"> <img src="images/weather/pheno3.gif"></img></xsl:if> ...... Всем спасибо,кто откликнется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2006, 20:13 |
|
||
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 09:23 |
|
||
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
Спасибо за отзыв Ненавижу регистрацию Код: plaintext 1. 2. 3. 4. 5. 6. но в таком духе не работает. Даже если я просто только hour осталяю <xsl:template match="PHENOMENA"> <xsl:if test="@hour = 3"> ... hour ведь из другого темплейта, и в темплейте PHENOMENA на него никакой реакции. Ошибки, правда не выдает, но и не обрабатывает условие. Может привести весь код, чтоб проще было разобраться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 15:13 |
|
||
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
Alex BraunМожет привести весь код, чтоб проще было разобраться? Показывайте и XSL, и XML...посмотрим, что на самом деле означает ваше" hour ведь из другого темплейта ". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 15:59 |
|
||
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
примного благодарен. вот файлик с погодой в xml (чтоб не захломлять пост даю ссылку.) http://informer.gismeteo.ru/xml/34300_1.xml А вот мои рукоделия: <?xml version="1.0" encoding="windows-1251" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="MMWEATHER"> <html> <head> <title>Погода</title> </head> <body> <table> <xsl:apply-templates select="REPORT" /> </table> </body> </html> </xsl:template> <xsl:template match="FORECAST"> <tr> <td colspan="2"><xsl:value-of select="(@day)" /> <xsl:if test="@month = 1"> янв. </xsl:if> <xsl:if test="@month = 2"> фвр. </xsl:if> <xsl:if test="@month = 3"> мрт. </xsl:if> <xsl:if test="@month = 4"> апр. </xsl:if> <xsl:if test="@month = 5"> мая </xsl:if> <xsl:if test="@month = 6"> июня </xsl:if> <xsl:if test="@month = 7"> июля </xsl:if> <xsl:if test="@month = 8"> авг. </xsl:if> <xsl:if test="@month = 9"> снт. </xsl:if> <xsl:if test="@month = 10"> окт. </xsl:if> <xsl:if test="@month = 11"> ноя. </xsl:if> <xsl:if test="@month = 12"> дек. </xsl:if> <xsl:if test="@weekday = 1"><font color="red"> Вс. </font></xsl:if> <xsl:if test="@weekday = 2"> П н. </xsl:if> <xsl:if test="@weekday = 3"> Вт. </xsl:if> <xsl:if test="@weekday = 4"> Ср. </xsl:if> <xsl:if test="@weekday = 5"> Чт. </xsl:if> <xsl:if test="@weekday = 6"> Пт. </xsl:if> <xsl:if test="@weekday = 7"> Сб. </xsl:if> <xsl:if test="@hour = 3"> ночь</xsl:if> <xsl:if test="@hour = 9"> утро</xsl:if> <xsl:if test="@hour = 15"> день</xsl:if> <xsl:if test="@hour = 21"> вечер</xsl:if></td> </tr> <tr> <td><xsl:apply-templates select="PHENOMENA"/></td> <td><xsl:apply-templates select="TEMPERATURE"/><br/> <xsl:apply-templates select="WIND"/></td> </tr> </xsl:template> <xsl:template match="PHENOMENA"> <img src="images/weather/pheno{@cloudiness}.gif"></img><br/> <!-- с именами картинок круто получилось! спасибо--> <img src="images/weather/pheno{@precipitation}.gif"></img> </xsl:template> <xsl:template match="TEMPERATURE"> <font size="2"><big>t<sup>o</sup>C </big></font><xsl:value-of select="(@min)" />... <xsl:value-of select="(@max)" /><sup>o</sup> </xsl:template> <xsl:template match="WIND"> <!-- тут я тоже картнки переделаю потом --> <xsl:if test="(@direction) = 0"><img src="images/weather/n.gif"></img></xsl:if> <xsl:if test="(@direction) = 1"><img src="images/weather/ne.gif"></img></xsl:if> <xsl:if test="(@direction) = 2"><img src="images/weather/e.gif"></img></xsl:if> <xsl:if test="(@direction) = 3"><img src="images/weather/se.gif"></img></xsl:if> <xsl:if test="(@direction) = 4"><img src="images/weather/s.gif"></img></xsl:if> <xsl:if test="(@direction) = 5"><img src="images/weather/sw.gif"></img></xsl:if> <xsl:if test="(@direction) = 6"><img src="images/weather/w.gif"></img></xsl:if> <xsl:if test="(@direction) = 7"><img src="images/weather/nw.gif"></img></xsl:if> <xsl:value-of select="(@min)" />-<xsl:value-of select="(@max)" /> м/сек </xsl:template> </xsl:stylesheet> Ну вот вроде так. сейчас это выглядит все: http://barabashka.com/weather.wml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 16:14 |
|
||
|
Помогите с choose в xsl
|
|||
|---|---|---|---|
|
#18+
В этом темплейте: Alex Braun <xsl:template match="PHENOMENA"> <img src="images/weather/pheno{@cloudiness}.gif"></img><br/> <!-- с именами картинок круто получилось! спасибо--> <img src="images/weather/pheno{@precipitation}.gif"></img> </xsl:template> напиши например так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Если хочется <xsl:if>, то идея, думаю тоже ясна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 18:16 |
|
||
|
|

start [/forum/topic.php?fid=14&fpage=75&tid=1334831]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 394ms |

| 0 / 0 |
