2013-06-20 6 views
0

У меня есть переменная qwe XSL который содержит XML-как этотXSL для каждого не работает

<Column1> 
    <TT TXT1="Skriveartikler" /> 
    <TT TXT1="Kridt" /> 
    <TT TXT1="Tavlekridt" /> 
</Column1> 

И мой цикл, как это

  <xsl:for-each select="$qwe/Column1/TT"> 
      <textarea> 
       <xsl:value-of select="."/> 
      </textarea> 
     </xsl:for-each> 

Но выполнение кода никогда не происходит внутри loop.Means no texarea не печатается. Может ли кто-нибудь дать какую-либо причину?

ответ

2
<xsl:value-of select="."/> 

даст вам значение строки TT элемента, который является пустой строкой в ​​вашем примере. Если вы хотите, чтобы отобразить текст и т.д. Skriveartikler, то вам нужно

<xsl:value-of select="@TXT1" /> 

Если вы не получаете на всех тогда <textarea> элементы предположительно переменная не содержит то, что вы ожидаете. Является ли Column1 XML в вопросе фрагментом, выбранным из более крупного документа, который имеет декларацию пространства имен по умолчанию (xmlns="...")? Если это так, вам нужно связать пространство имен с префиксом в таблице стилей и использовать этот префикс в XPaths.

Другая возможность заключается в том, что в XSLT 1.0, если вы объявляете переменную как

<xsl:variable name="qwe"> 
    <Column1> 
    <TT TXT1="Skriveartikler" /> 
    <TT TXT1="Kridt" /> 
    <TT TXT1="Tavlekridt" /> 
    </Column1> 
</xsl:variable> 

то переменная будет содержать результирующий фрагмент дерева, а не набор узлов, и единственное, что вы можете сделать с RTF копирует его в дерево вывода - вы не можете перемещаться в него с помощью выражений XPath. Если вы хотите это сделать, вам нужно будет преобразовать RTF в набор узлов, используя функцию расширения, такую ​​как exslt:node-set()

+0

Спасибо за ответ. Но моя проблема заключается в том, что цикл никогда не выполняется. Даже в пустой текстовой области не печатается. – Athul

+0

@AthulKSurendran Я добавил еще пару возможных объяснений. –

0

Переменная не содержит того, что вы нам сообщаете. Мы не можем понять, почему, не видя, как вы настраиваете переменную.

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