2010-08-18 45 views
0

我正在处理XSLT文件,并遇到了一些问题。我有一个标签可以有两个不同的子标签的情况。例如:XSLTT IF标记标题

<TAG> 
<PERSON1/> 
<TAG> 

<TAG> 
<PERSON2/> 
</TAG> 

有没有写一个XLS的方式:如果标签上的语句来看看它的名为“PERSON1”或“PERSON2”,因为PERSON1和PERSON2需要以完全不同的方式处理?

谢谢。

回答

2

我不认为你需要一个如果,您可以使用xsl:应用模板,所以是这样的:

<xsl:template match="TAG"> 
    <!-- Code ... --> 
    <xsl:apply-templates/> 
</xsl:template> 

<xsl:template match="PERSON1"> 
    <!-- Something goes here --> 
</xsl:template> 

<xsl:template match="PERSON2"> 
    <!-- Something else goes here --> 
</xsl:template> 
+1

这是很好的,你建议使用“模式匹配”的。但是用''有一个无限递归。应该是'' – 2010-08-18 19:12:39

+1

@Alejando。那里有'名字'应该有'match'。我冒着编辑的自由。如果流氓要求“TAG”元素本身在每种情况下处理方式不同,他们可以使用“...和equiv。 ''仍然可以,当它更方便时,''... – 2010-08-18 19:38:47

+0

@Jon Hanna:+1编辑。 – 2010-08-18 20:06:53