Xml XSLT和xsl:for都带有通配符
我有以下XSLT片段(版本1.0):Xml XSLT和xsl:for都带有通配符,xml,xslt,Xml,Xslt,我有以下XSLT片段(版本1.0): 这很好用。我想用编写这个更智能的程序,因为/chkBox的项目数可能不同,但我无法让它工作。我试过很多类似的方法: <xsl:for-each select="Items/chkBox*"> <p><xsl:value-of select="." disable-output-escaping="yes" /></p> </xsl:for-each> 但它不起作用-我得到了一
这很好用。我想用
编写这个更智能的程序,因为/chkBox的项目数可能不同,但我无法让它工作。我试过很多类似的方法:
<xsl:for-each select="Items/chkBox*">
<p><xsl:value-of select="." disable-output-escaping="yes" /></p>
</xsl:for-each>
但它不起作用-我得到了一个错误:
表达式中出现意外标记“”。Items/chkBox*
*
与元素匹配。如果要匹配元素名称,则必须考虑使用字符串函数。在这种情况下,以
<xsl:for-each select="Items/*[starts-with(local-name(), 'chkBox')]">
很有可能您不需要
,而是需要chkBox
name上的模板匹配。为我们展示更多xslt甚至原始xml示例。感谢您的建议,但是@TimC的答案非常有效,我正在寻找解决方案。
<xsl:for-each select="Items/*[starts-with(local-name(), 'chkBox')]">