|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Помогите с XSL, уже крышей еду |
|
Помогите с XSL, уже крышей еду
|
sharpp
Сообщения: n/a |
есть код, что в нем изменить чтобы на страницу выходили все строки а не на 2 или 3 страницы разбивались.
большое спасибо. <?xml version="1.0" encoding="windows-1251"?> <!DOCTYPE xsl:stylesheet> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" indent="yes" encoding="Windows-1251"/> <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="/document"> <!-- Получаем ID родительской группы и записываем в переменную $parent_group_id --> <xsl:param name="parent_group_id" select="blocks/parent_group_id"/> <!-- Если в находимся корне - выводим название информационной системы --> <xsl:if test="blocks/parent_group_id=0"> <h1><xsl:value-of disable-output-escaping="yes" select="blocks/name"/></h1> <xsl:value-of disable-output-escaping="yes" select="blocks/description"/> </xsl:if> <!-- Если в находимся в группе - выводим название группы --> <xsl:if test="blocks/parent_group_id!=0"> <h1><xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/name"/></h1> </xsl:if> <!-- ============= --> <!-- Путь к гурппе --> <!-- ============= --> <xsl:apply-templates select=".//group[@id=$parent_group_id]" mode="goup_path"/> <p/> <!-- ========= --> <!-- Подгруппы --> <!-- ========= --> <!-- Отображение подгрупп данной группы --> <table border="0" cellspacing="0" cellpadding="2"> <tr> <xsl:apply-templates select=".//group[@parent_id=$parent_group_id]" mode="goups"/> </tr> </table> <p/> <!-- <h1><xsl:value-of disable-output-escaping="yes" select="blocks/name"/> <xsl:apply-templates select="blocks/groups_tree/group_node"/> </h1> --> <!-- Отображение подгрупп данной группы <table border="0" cellspacing="0" cellpadding="2" class="news_table"> <tr> <xsl:apply-templates select="blocks/groups/group"> <xsl:sort select="@order"/> </xsl:apply-templates> </tr> </table> --> <xsl:if test="count(blocks/items/item[item_status=1]) > 0"> <!-- Отображение записи информационного блока --> <ul> <xsl:apply-templates select="blocks/items/item[item_status=1]"> </xsl:apply-templates> </ul> </xsl:if> <!-- Строка ссылок на другие страницы архива информационного блока --> <xsl:if test="ОтображатьСсылкиНаСледующиеСтраницы=1"> <xsl:if test="blocks/items/count_items > blocks/items/items_on_page"> <xsl:call-template name="for"> <xsl:with-param name="n" select="blocks/items/count_items div blocks/items/items_on_page"/> <xsl:with-param name="current_page" select="blocks/items/current_page"/> </xsl:call-template> </xsl:if> </xsl:if> <!-- Ссылка на архив --> <xsl:if test="ОтображатьСсылкуНаАрхив=1"> <p/><a href="{blocks/url}">Архив "<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>"</a> </xsl:if> </xsl:template> <xsl:template match="blocks/groups_tree/group_node"> <xsl:if test="group_name!=''"> / <a href="{../../url}{group_path}"><xsl:value-of disable-output-escaping="yes" select="group_name"/></a> </xsl:if> </xsl:template> <xsl:template match="blocks/groups/group"> <td><a href="{/document/blocks/url}{group_url}"><xsl:value-of disable-output-escaping="yes" select="group_name"/></a></td> <xsl:if test="position() mod 5 =0"> <tr/> </xsl:if> </xsl:template> <xsl:template match="blocks/items/item"> <li> <a href="{item_path}"><b><xsl:value-of disable-output-escaping="yes" select="item_name"/></b></a> <br/> <xsl:value-of disable-output-escaping="yes" select="item_description"/> <br/> </li> </xsl:template> <!-- Цикл для вывода строк ссылок --> <xsl:template name="for"> <xsl:param name="i" select="0"/> <xsl:param name="n"/> <xsl:param name="current_page"/> <xsl:if test="$n > $i"> <!-- Ставим ссылку на страницу--> <xsl:if test="$i != $current_page"> <a href="?page={$i}"> <xsl:value-of select="$i+1"/> </a> </xsl:if> <!-- Не ставим ссылку на страницу--> <xsl:if test="$i = $current_page"> <xsl:value-of select="$i+1"/> </xsl:if> <!-- Рекурсивный вызов шаблона. НЕОБХОДИМО ПЕРЕДАВАТЬ ВСЕ НЕОБХОДИМЫЕ ПАРАМЕТРЫ! --> <xsl:call-template name="for"> <xsl:with-param name="i" select="$i + 1"/> <xsl:with-param name="n" select="$n"/> <xsl:with-param name="current_page" select="$current_page"/> </xsl:call-template> </xsl:if> </xsl:template> <!-- ======================================================== --> <!-- Шаблон выводит рекурсивно ссылки на группы инф. элемента --> <!-- ======================================================== --> <xsl:template match="group" mode="goup_path"> <xsl:param name="parent_id" select="@parent_id"/> <xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/> <xsl:if test="@parent_id=0"> <a href="{/document/blocks/url}"><xsl:value-of disable-output-escaping="yes" select="/document/blocks/name"/></a> </xsl:if> -> <a href="{/document/blocks/url}{fullpath}"><xsl:value-of disable-output-escaping="yes" select="name"/></a> </xsl:template> <!-- ======================================================== --> <!-- Шаблон выводит ссылки подгурппы инф. элемента --> <!-- ======================================================== --> <xsl:template match="group" mode="goups"> <xsl:param name="parent_id" select="@parent_id"/> <td valign="bottom"> <xsl:if test="small_image!=''"> <a href="/upload/{big_image}" target="_blank"><img src="/upload/{small_image}"/></a> </xsl:if> <a href="{/document/blocks/url}{fullpath}"><b><xsl:value-of disable-output-escaping="yes" select="name"/></b></a> </td> </xsl:template> </xsl:stylesheet> |
|
Отправлено: 10:51, 05-09-2006 |
![]() Старожил Сообщения: 302
|
Профиль | Сайт | Отправить PM | Цитировать Вообще если Вы этот код не писали то я бы его трогал очень осторожно.
А что бы выполнить вашу задачу я бы нашел параметр (внешний прямо и таблицы или внутренний передаваемый в XML) он называется что-то типа "количество элементов на странице". Поставил бы число побольше, там 1000, ну на порядок больше чем Ваших строк. Вот бы и были все ваши строки без никаких страниц. И не нужно лазить в коде. |
Отправлено: 11:52, 05-09-2006 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
sharpp
Сообщения: n/a |
а что здесь может за это отвечать?
|
Отправлено: 12:04, 05-09-2006 | #3 |
![]() Старожил Сообщения: 302
|
Профиль | Сайт | Отправить PM | Цитировать sharpp,
Вообще тяжело сказать без входного XML. Посмотрите во входном XML выводимые строки все независимо от страницы на которой находимся или их там часть (только те, которые отнотся к странице)? P.S. Вообще неплохо было бы видеть собственно вх. XML |
Отправлено: 17:39, 05-09-2006 | #4 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать sharpp
что то мне кажется что эта штука стоит какоето дерево... |
|
------- Отправлено: 17:44, 05-09-2006 | #5 |
sharpp
Сообщения: n/a |
как он выглядит входного XML???? я в это деле тормоз. помогите плиз. с меня пиво
|
Отправлено: 21:05, 05-09-2006 | #6 |
![]() Старожил Сообщения: 302
|
Профиль | Сайт | Отправить PM | Цитировать Vlad Drakula,
В смысле? sharpp, Мда, Вам нужно было бы неплохо знать основы, а то Вам вообще будет непонятно. В движок нужно лазить. Вообще он может скорее всего и не существует в виде файла, а собирается в переменную и подается на трансформацию. Нужно перед трансформацией вставить кусочек, который сохранит XML в файл, ну а потом его можно будет рассматривать. Цитата:
![]() |
|
Отправлено: 21:52, 05-09-2006 | #7 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Установка - Ужасная проблема с вистой!!!!уже не знаю что делать!помогите | Kaztantin | Microsoft Windows Vista | 11 | 22-05-2009 20:27 | |
[решено] Срочно! Не включается монитор ASUS MK241H, что делать? Сегодня еду менять! | Evil_Devil | Непонятные проблемы с Железом | 6 | 30-06-2008 08:32 | |
Помогите я уже совсем отчаялся( | Comandante | Непонятные проблемы с Железом | 41 | 13-06-2007 09:44 | |
xsl таблица | FADE | Вебмастеру | 8 | 22-04-2007 14:23 | |
xsl - include | FADE | Вебмастеру | 13 | 21-04-2007 23:19 |
|