我有一个问题,我需要根据父母模板进行一些模板更改。在此示例中,如果父模板为PhysicalPerson
,则模板Debtor
为“是”,如果Claimant
,则为{0}。并且所有不同之处在于,Name在一个中是必需的,而在另一个中是必需的,以及链接
<a class="UserDataButton" style="float:right; padding:2px 2px 0 0;">Insert my data</a>
我首先需要但不要排在第二位。
甚至可以确定标签是否属于特定的父母模板吗?或者我需要不同的方法?
<xsl:template match="t:Debtor">
<div class="tab-pane" id="tab-Debtor" data-tab-name="Debtor">
<xsl:apply-templates select="t:PhysicalPerson" />
<xsl:apply-templates select="t:LegalPerson" />
<xsl:apply-templates select="t:AddressList" />
<xsl:apply-templates select="t:PhoneList" />
<xsl:apply-templates select="t:EmailList" />
</div>
</xsl:template>
<xsl:template match="t:Claimant">
<div class="tab-pane" id="tab-Claimant" data-tab-name="Claimant">
<xsl:apply-templates select="t:PhysicalPerson" />
<xsl:apply-templates select="t:LegalPerson" />
<xsl:apply-templates select="t:AddressList" />
<xsl:apply-templates select="t:PhoneList" />
<xsl:apply-templates select="t:EmailList" />
</div>
</xsl:template>
<xsl:template match="t:PhysicalPerson">
<div>
<div class="fiz_persona">
<div style="float:left; padding:2px 0 0 2px;">
Physical Person
</div>
<a class="UserDataButton" style="float:right; padding:2px 2px 0 0;">
Insert my data
</a>
<br />
<label class="floatleft required"><span class="star">*</span>
Name
</label>
...................
答案 0 :(得分:0)
如果您使用<xsl:template match="t:Debtor/t:PhysicalPerson">
,则该模板仅适用于具有t:PhysicalPerson
父元素的t:Debtor
元素。然后,您可以编写另一个模板<xsl:template match="t:Claimant/t:PhysicalPerson">...</xsl:template>
。