我有这个XSLT-snippet(版本1.0):
<p><xsl:value-of select="Items/chkBox1" disable-output-escaping="yes" /></p>
<p><xsl:value-of select="Items/chkBox2" disable-output-escaping="yes" /></p>
<p><xsl:value-of select="Items/chkBox3" disable-output-escaping="yes" /></p>
这很好用。我想用<xsl:for-each>
来编写这个更聪明,因为Items / chkBox的数量可能不同,但我不能使它工作。我尝试了很多这样的事情:
<xsl:for-each select="Items/chkBox*">
<p><xsl:value-of select="." disable-output-escaping="yes" /></p>
</xsl:for-each>
但它不起作用 - 我收到错误:
表达式中出现意外的标记''。项目/ chkBox * LT; -
如何在最后使用带有通配符的<xsl:for-each>
?
请帮忙!
提前致谢:)
答案 0 :(得分:2)
*
匹配一个元素。如果要匹配元素名称,则必须考虑使用字符串函数。在这种情况下,starts-with
<xsl:for-each select="Items/*[starts-with(local-name(), 'chkBox')]">