我正在尝试在xslt mega菜单代码的底部添加一个div来显示超链接'查看全部'按钮/号召性用语,但无法显示任何内容。我的xslt代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:param name="ControlID" />
<xsl:param name="Options" />
<xsl:param name="subMenuColumns">1</xsl:param>
<xsl:param name="subpointer"><![CDATA[]]></xsl:param>
<xsl:param name="pointer"><![CDATA[]]></xsl:param>
<xsl:param name="startUl"><![CDATA[<ul>]]></xsl:param>
<xsl:param name="endUl"><![CDATA[</ul>]]></xsl:param>
<xsl:template match="/*">
<xsl:apply-templates select="root" />
</xsl:template>
<xsl:template match="root">
<script type="text/javascript">
function splitSubMenu(columns) {
jQuery("div.sub").each(function (i) {
if (i==1) {
columns=4;
} else {
columns=4;
}
var items = jQuery(this).find('ul');
var blockCount = columns;
</script>
<ul class="megamenu" id="megamenu">
<xsl:apply-templates select="node">
<xsl:with-param name="level" select="0"/>
</xsl:apply-templates>
</ul>
</xsl:template>
<xsl:template match="node">
<xsl:param name="level" />
<xsl:choose>
<xsl:when test="$level=0">
<li>
<xsl:attribute name="class">
level0 <xsl:if test="@breadcrumb = 1">current</xsl:if>
</xsl:attribute>
<a>
<xsl:attribute name="class">
level0 <xsl:if test="@breadcrumb = 1">current</xsl:if>
</xsl:attribute>
<xsl:choose>
<xsl:when test="@enabled = 1">
<xsl:attribute name="href">
<xsl:value-of select="@url"/>
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="href">#</xsl:attribute>
<xsl:attribute name="onclick">return false</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="@text" />
<xsl:if test="node">
<xsl:value-of select="$pointer" disable-output-escaping="yes"/>
</xsl:if>
</a>
<xsl:if test="node">
<div class="sub">
<xsl:apply-templates select="node">
<xsl:with-param name="level" select="$level + 1" />
</xsl:apply-templates>
</div>
</xsl:if>
</li>
</xsl:when>
<xsl:when test="$level=1">
<ul class="megamenusubcontent">
<li class="subheader">
<h2>
<a>
<xsl:choose>
<xsl:when test="@enabled = 1">
<xsl:attribute name="href">
<xsl:value-of select="@url"/>
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="href">#</xsl:attribute>
<xsl:attribute name="onclick">return false</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="@text" />
</a>
</h2>
</li>
<xsl:if test="node">
<xsl:apply-templates select="node">
<xsl:with-param name="level" select="$level + 1" />
</xsl:apply-templates>
</xsl:if>
</ul>
</xsl:when>
<xsl:otherwise>
<li class="sublink">
<a>
<xsl:choose>
<xsl:when test="@enabled = 1">
<xsl:attribute name="href">
<xsl:value-of select="@url"/>
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="href">#</xsl:attribute>
<xsl:attribute name="onclick">return false</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="@text" />
</a>
</li>
<xsl:if test="node">
<xsl:apply-templates select="node">
<xsl:with-param name="level" select="$level + 1" />
</xsl:apply-templates>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
真的有两个问题,1)我将使用什么xsl翻译来展示号召性用语&#39;查看全部&#39;链接在我的超级菜单底部类似于以下内容:
2)在xslt模板中我插入哪个以使其显示在mega菜单下拉列表中所有菜单列表的底部?
我尝试了以下内容,但屏幕上仍然没有显示任何内容:
<xsl:template match="url">
<a href="{.}">
<xsl:value-of select="../view-all"/>
</a>
</xsl:template>
干杯
答案 0 :(得分:0)
我最后只是在我的超级菜单中将最后一个李作为一个&#39;查看全部&#39;页面和使用css相应的样式。