gpt4 book ai didi

java - 为什么 XSL 中的内联 java 脚本不包含在服务器端 XSLT 转换中?

转载 作者:行者123 更新时间:2023-11-29 05:07:23 24 4
gpt4 key购买 nike

我的项目中的一个 xsl 文件中有以下代码

<xsl:template name="javascript">
<script type="text/javascript">
function toggleDisplay(item)
{
//dummy function, actual code removed
}

</script>
</xsl:template>

当 xslt 转换在 java 的服务器端完成时,此 java 脚本函数将不会包含在生成的 html 输出中。在服务器端 XSLT 转换的情况下,将包含单独的 js 文件。因为我是 XSLT 的新手,所以我无法通过代码理解它是如何在服务器端应用转换时跳过 XSL 文件中的 java 脚本函数的。对此的任何指导/帮助将不胜感激。

最佳答案

你的模板是名字模板,除非你调用它,否则它不会被输出。当你想使用调用模板指令时,你应该调用你的模板:

...
<xsl:call-template name="javascript" />
...
<xsl:template name="javascript">
<script type="text/javascript">
function toggleDisplay(item)
{
//dummy function, actual code removed
}
</script>
</xsl:template>

否则,如果你想在xml源文档中遇到“javascript”元素时输出你的script元素,那么你应该使用ma​​tch属性:

...
<xsl:apply-templates select="javascript" />
...
<xsl:template match="javascript">
<script type="text/javascript">
function toggleDisplay(item)
{
//dummy function, actual code removed
}
</script>
</xsl:template>

关于java - 为什么 XSL 中的内联 java 脚本不包含在服务器端 XSLT 转换中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29897698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com