xslt: значение текста, связанного с элементом - PullRequest
13 голосов
/ 12 августа 2010

Если у меня есть файл XML, который включает

<param name="foo" value="5000" >foo is a way of making pasta sauce</param>
<param name="bar" value="3000" >bar is controlling the beer taps</param>

, и я хочу использовать XSLT для обработки этого в файл HTML с атрибутами имени и значения и текстом в качестве описания, как я могу это сделать?получить текст узла XML?

<xsl:for-each select="param">
   <tr>
      <td><xsl:value-of select="@name"/></td>
      <td><xsl:value-of select="@value"/></td>
      <td><xsl:text> </xsl:text></td>
   </tr>
</xsl:for-each>

Приведенный выше фрагмент XSLT успешно получает атрибуты name и value, но не может получить текст, и мне кажется, что я упускаю что-то очевидное, но я незнаете что.

Ответы [ 2 ]

15 голосов
/ 12 августа 2010

Попробуйте это

<xsl:for-each select="param">
   <tr>
      <td><xsl:value-of select="@name"/></td>
      <td><xsl:value-of select="@value"/></td>
      <td><xsl:value-of select="text()"/></td>
   </tr>
</xsl:for-each>
4 голосов
/ 12 августа 2010

ага, это тоже похоже на работу:

<xsl:for-each select="param">
   <tr>
      <td><xsl:value-of select="@name"/></td>
      <td><xsl:value-of select="@value"/></td>
      <td><xsl:value-of select="."/></td>
   </tr>
</xsl:for-each>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...