首页 > 解决方案 > 如何在xslt2.0中使用javascript函数?

问题描述

我创建了一个文件“name.js”,也有“name.xslt”我想从“name.xslt”中的“name.js”调用getName函数。为此,我需要导入“name.js”,然后从该文件中调用该函数。

请帮助我如何在 XSLT 中导入“name.js”以及如何从 js 文件中调用该函数?

标签: javascriptxslt-2.0

解决方案


除非您使用支持使用 Javascript 的 XSLT 2.0 处理器来实现扩展功能,否则这是不可能的。在您提到您使用 Saxon 的评论中,Saxon 不支持这一点,因为它首先允许您使用xsl:function https://www.w3.org/TR/xslt-30/#stylesheet使用纯 XSLT 和 XPath 实现自己的函数-functions及其他功能允许您使用 Java(针对其 Java 版本)或 C# 或 VB.NET 为其 .NET 版本编写扩展函数,有关详细信息,请参阅http://saxonica.com/html/documentation/extensibility/

其他一些 XSLT(如 Altova 或 Xml Prime)可能会为您提供一些支持以使用 Javascript 或 JScript 来实现扩展功能,但通常仅限于这些语言的核心引擎,因此根据您的脚本文件的用途,它可能根本无济于事,假设脚本文件尝试使用浏览器 API 特定的对象和函数,例如窗口、文档。


推荐阅读