2015-07-01 4 views
0

Пожалуйста, простите меня, я не специалист в XSLT (ВООБЩЕ), так что это может быть действительно очень плохо, но ...для-каждого цикла в XSLT

У меня есть XML (например)

<tests> 
    <test seq="1"> 
     <foo name="foo1" /> 
     <bar name="bar1" /> 
    </test> 
    <test seq="2"> 
     <foo name="foo2" /> 
     <bar name="bar2" /> 
    </test> 
    <test seq="1"> 
     <foo name="foo3" /> 
     <bar name="bar3" /> 
    </test> 
<tests> 

и у меня есть XSLT (опять же, например)

<xsl:template match="dptest"> 
     <xsl:for-each select="/tests/test"> 
      <p> 
       Sequence:<xsl:value-of select="@seq"/><br/> 
       <b>Name Of Foo:</b><xsl:value-of select="/foo/@name"/> and <b>Name Of Bar:</b><xsl:value-of select="/bar/@name"/> 
      </p> 
     </xsl:for-each> 
    </xsl:template> 

и я хотел выплюнуть ...

Последовательность: 1
Название Foo: foo1 и Название Бар: bar1

Последовательность: 2
Название Foo: foo2 и Название бара: bar2

Последовательность: 3
Название Foo: foo3 и Название Бар: bar3

Но я получаю ...

Последовательность: 1
Название Foo: и Название Бар:

Последовательность: 2
Название Foo: и Имя Из Bar:

Последовательность: 3
Название Foo: и Имя Из бара:

если кто-то может мне точку в правильном направлении, я был бы признателен МАССОВО :)

Приветствия

Daz

ответ

2

не использовать полный путь

select="/foo/@name" 

, но относительный путь

select="foo/@name" 
+0

Я проработал, и я глуп :) Я уже пробовал делать то, что вы предлагали раньше, и он не работал. Я только что заметил причину, по которой он не работал, потому что у меня было. . выберите = «Foo/@ Name» бога дамбы чувствителен к регистру код :) Я до сих пор принимаю ваш ответ, хотя, как вы на самом деле правильно, так что спасибо за вашу помощь Пьера;) – dazziep

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