我可以在将XML转换为另一种XML时在XSL中使用Javascript吗?

时间:2010-07-20 06:45:45

标签: xml

我有一个XML文档,我正在使用XSL创建另一个XML。我需要检查一些特定条件,为此我想在我的XSL中使用Javascript。然而,我尝试过,无法获得理想的结果。 我不确定Javascript是否可以在这个XSL中工作以检查条件。 请指教。

2 个答案:

答案 0 :(得分:0)

XSLT是XML转换文件。它们通过XSLT转换引擎运行。我能看到javascript工作的唯一方法就是如果XSLT转换引擎以某种方式理解Javascript。我不指望它。您使用的是哪个XSL转换引擎?

更新:也许这会有助http://www.informit.com/articles/article.aspx?p=26881&seqNum=4

在本文中请注意他引用了特定的转换引擎(Xalan-Java 2 XSLT)。每个人都愿意以不同的方式实施这样的扩展。

答案 1 :(得分:0)

在Mozilla中,似乎提供了一个对象:check,https://developer.mozilla.org/en/Using_the_Mozilla_JavaScript_interface_to_XSL_Transformations。 (以下是MDC文档中的一些代码摘录)。

您需要指定 XSLT样式表,然后创建一个XSLTProcessor对象:

var processor = new XSLTProcessor();  

这样做可以实现一个新文档并根据指定的XSLT样式进行转换:

var testTransform = document.implementation.createDocument("", "test", null);  
    testTransform.addEventListener("load", onload, false);  
    testTransform.load("test-transform.xml");  

    function onload() {  
        processor.importStylesheet(testTransform);  
    }  

HTH,

FK