Модераторы: diadiavova
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> внутри второго цикла контекст меняется, профы помогите 
V
    Опции темы
armor85
  Дата 25.9.2007, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злой программер
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 6.2.2007
Где: Сочи, блин!

Репутация: нет
Всего: -1



 <xsl:variable name="enumDoc" select="document('d2.xml')"/>
  <xsl:for-each select="$enumDoc/gr/root/i[@n &gt;=1 and @n &lt;=6]">
   <xsl:for-each select="$enumDoc/gr/loot/k[@f &gt;=1 and @f &lt;=7]">
    
    
    <xsl:value-of select="@n"/> 
    
   </xsl:for-each>
  </xsl:for-each>

Почему @n пустое?

Это сообщение отредактировал(а) armor85 - 25.9.2007, 13:43
PM MAIL   Вверх
maxim1000
Дата 25.9.2007, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 7
Всего: 110



ну, наверное, потому, что в узлах, которые выбираются вторым for-each, нету атрибута n...
с таким кодом получается, что сами узлы с атрибутом n никому не интересны, а интересно лишь их количество, т.к. для каждого узла, выбранного первым for-each выполняется один и тот же код..


--------------------
qqq
PM WWW   Вверх
armor85
Дата 26.9.2007, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злой программер
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 6.2.2007
Где: Сочи, блин!

Репутация: нет
Всего: -1



Цитата

с таким кодом получается, что сами узлы с атрибутом n никому не интересны


Именно, они не интересны, нужен лишь два цикла и его индексы, а код будет выполняться в зависимости от этих индексов. 
PM MAIL   Вверх
maxim1000
Дата 26.9.2007, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 7
Всего: 110



хм... так если они неинтересны, то зачем выводить @n?
если нужны индексы, то можно использовать функцию position
только внутри вложенного цикла она даст индекс вложенного цикла а чтобы узнать индекс внешнего цикла, нужно его предварительно запомнить в переменную

что-то типа такого:
Код

<xsl:for-each select="...">
  <xsl:variable name="index1" select="position()"/>
  <xsl:for-each select="...">
    index1: <xsl:value-of select="$index1"/>, index2: <xsl:value-of select="position()"/>
  </xsl:for-each>
</xsl:for-each>


Добавлено через 3 минуты и 35 секунд
P.S.
кстати, что подразумевается под индексом?
я предполагал, что порядковый номер узла среди всех подходящих
если это - значения атрибутов, то и сохранять, соответственно, нужно их...


--------------------
qqq
PM WWW   Вверх
armor85
  Дата 26.9.2007, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злой программер
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 6.2.2007
Где: Сочи, блин!

Репутация: нет
Всего: -1



Я просто использую "хитрый" цикл, где-то прочитал...
Я про переменную спасибо, помогло.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась.

Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение.

Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел

Желаем удачи в Вашем деле!


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | XML, XSL | Следующая тема »


 




[ Время генерации скрипта: 0.0394 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.