这个xslt如何遍历动态内容呢?
一般的XML,我们用 <xsl:value-of select= "visitName "> 来显示visitName的值。
但我们现在的这个XML,是动态生成的,其各层的结构是限定的,但层的具体内容则是变化的。例如:
<info>
<visitName> 涨三 </visitName>
<visitDate> 2007-04-01 </visitDate>
</info>
另一个:
<info>
<visitName> 涨三 </visitName>
<visitTime> 2007-04-01 13:12:00 </visitTime>
<visitPlace> 301医院 </visitPlace>
</info>
可以看到info里面的内容是多变的(并且不可枚举,它是动态定义的),那么我们在写xslt时,如何使得可对于info下的内容遍历并输出呢?
[解决办法]
<xsl:for-each select= "//info/* ">
<xsl:value-of select= "text() "/>
</xsl:for-each>
[解决办法]
<xsl:for-each select= "//info/* ">
<xsl:value-of select= "name() "/> : <xsl:value-of select= ". "/> <br/>
</xsl:for-each>
[解决办法]
<xsl:for-each select= "//info/* ">
<xsl:if test= "(position() mod 2)=1 "> <xsl:text disable-output-escaping= "yes "> <tr> </xsl:text> </xsl:if>
<td> <xsl:value-of select= "name() "/> </td> <td> <xsl:value-of select= "text() "/> </td>
<xsl:if test= "(position() mod 2)=0 "> <xsl:text disable-output-escaping= "yes "> </tr> </xsl:text> </xsl:if>
</xsl:for-each>