繁体   English   中英

仅在单击链接时执行一些 XSLT

[英]Do some XSLT only when a link is clicked

我有一个菜单a元素所有这些使用XSLT从XML文件中获取文本:

<nav>
  <xsl:for-each select="package">
        <a href="#" onclick="generateContent('{@name}', this);"><xsl:value-of select="@name"/></a>
  </xsl:for-each>
</nav>

现在我想生成一个div (并在单击链接时将其附加到网站),其内容是从我的 xml 文件(使用上面的 xslt)生成的。

最好的方法是什么? 我的猜测是从 JS 来做 - 从generateContent(..)函数; 但我不知道这是否可能,以及我是否不会以这种方式使事情变得过于复杂。

我认为你把一件简单的事情复杂化了。 按照我的方式,您应该生成所有 html 内容,包括菜单和子项。 然后做一些 javascript 的东西来隐藏和显示应该显示的子项目。 它要求您使用一些 CSS 和 javascript(可能是 Jquery)来完成您的工作。

从 onclick 委托中再次调用 xslt 不是一个好主意,因为如果您一次又一次地生成所有子项,每次用户都想看到它们时,因此无论多么困难,您都不会一直拥有状态可以执行。 然而,以我理解你的代码的方式,做这样的事情似乎不可能(或很难)。

希望能帮助到你。

干杯

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM