我有一个处理某些节点的XSL代码,如果某些条件为真,则在执行apply-template select =“。”之前。我需要修改当前节点(添加和属性)。
如何在调用apply-template select =“。”之前向节点添加属性,或者根本不可能?
答案 0 :(得分:0)
您可以应用两个转换 - 第一个按原样复制每个节点,但只将必要的属性添加到相关节点。然后第二次转换应用于第一次转换的结果。
另一种方法是将属性添加到已应用的模板 <xsl:apply-templates select="."/>
答案 1 :(得分:0)
如果您使用的是Microsoft XSLT处理器,那么您可以使用msxsl:node-set函数来复制和修改您的节点,如果您真的必须通过具有修改属性的节点,但我个人会选择Dimitre的方法上方。
http://msdn.microsoft.com/en-us/library/hz88kef0(v=vs.71).aspx