我必须在下面的 xml 中添加一个 href 属性,但不是每个子进程都有一个。
<?xml version="1.0"?>
<processes>
<process nr="1" name="Process1" >
<subprocess nr="1" name="Subprocess1" href="some/relative/link.html"></subprocess>
<subprocess nr="2" name="Subprocess2" href="#"></subprocess>
<subprocess nr="3" name="Subprocess3"></subprocess>
</process>
</processes>
我需要在我的原始 XSL 中进行哪些更改才能生成以下 HTML 输出?如何处理不同的 href 属性值?
XSL:
<xsl:template name="subprocess">
<xsl:call-template name="linking"/>
</xsl:template>
<xsl:template name="linking">
<xsl:variable name="processNo" select="@nr"/>
<ul class="myframe">
<xsl:for-each select="subprocess">
<li>
<a class="myButton" href="p{$processNo}s{@nr}.html">
<xsl:value-of select="@nr"/>
<br/>
<xsl:value-of select="@name"/>
</a>
</li>
</xsl:for-each>
</ul>
</xsl:template>
HTML:
<ul class="myframe">
<li><a class="linkButton" href="some/relative/link.html">Subprocess1</a></li>
<li><a class="noLink" href="#">Subprocess2</a></li>
<li><a class="myButton" href="p1s3.html">Subprocess3</a></li>
</ul>
因此,根据 href 属性,我也想分配不同的 CSS 类。
谢谢你的帮助。