我在xslt中有一个代码,用于使用按钮选择两个值。我需要检查值并设置激活相应的按钮。这是我的代码
<ul class="switch">
<li class="private-btn">
<xsl:if test="library:RequestQueryString('at') = 'privat'">
here i need the active btn code
</xsl:if>
<input type="button" class="Privat" value="Privat"></input>
</li>
<li class="business-btn">
<xsl:if test="library:RequestQueryString('at') = 'Erhverv'">
here i need the active btn code
</xsl:if>
<input type="button" class="Privat" value="Erhverv"></input>
</li>
</ul>
任何人都可以帮忙吗?
答案 0 :(得分:2)
如果我理解正确,您希望有条件地在按钮上设置disabled
html属性(可能还有其他属性)。
您可以有条件地添加属性,如下所示:
<input type="button" class="Privat" value="Erhverv">
<xsl:choose>
<xsl:when test="library:RequestQueryString('at') = 'privat'">
<xsl:attribute name="disabled">disabled</xsl:attribute>
</xsl:when>
<xsl:otherwise>
... Other attribute here etc.
</xsl:otherwise>
</xsl:choose>
</input>
由于您似乎需要重用逻辑,因此您还可以将启用/属性状态生成重构为调用模板,如下所示:
<xsl:template name="SetActiveState">
<xsl:param name="state"></xsl:param>
<xsl:choose>
<xsl:when test="$state='true'">
<xsl:attribute name="disabled">disabled</xsl:attribute>
</xsl:when>
<xsl:otherwise>...</xsl:otherwise>
</xsl:choose>
</xsl:template>
然后这样称呼它:
<input type="button" class="Privat" value="Erhverv">
<xsl:call-template name="SetActiveState">
<xsl:with-param name="state"
select="library:RequestQueryString('at') = 'privat'">
</xsl:with-param>
</xsl:call-template>
</input>
... <input type="button" class="Privat" value="Privat"></input>