Xml xslt:与元素关联的文本的值
如果我有一个包含Xml xslt:与元素关联的文本的值,xml,xslt,Xml,Xslt,如果我有一个包含 <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> foo是一种制作意大利面酱的方法 酒吧正在控制啤酒龙头 我想使用XSLT将其处理成一个HTML文件,使用名称和值属性以及文本作为描述,
<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>
foo是一种制作意大利面酱的方法
酒吧正在控制啤酒龙头
我想使用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属性,但它没有获得文本,我想我遗漏了一些明显的东西,但我不知道是什么。试试这个
<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>
啊哈,这似乎也能奏效:
<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>
是。区别是:
xsl:value of select=“text()”
输出第一个文本节点子节点的字符串值,以及xsl:value of select=“.”“
输出上下文节点的字符串值。