【问题标题】:Looking for the JavaScript equivalent of this PHP script (XSLTProcessor)寻找与此 PHP 脚本 (XSLTProcessor) 等效的 JavaScript
【发布时间】:2011-04-30 07:54:24
【问题描述】:

任何人都可以想出执行此操作所需的 javascript 吗?

<?php
# START XSLT
$xslt = new XSLTProcessor(); 
$XSL = new DOMDocument(); 
$XSL->load('example.xsl'); 
$xslt->importStylesheet($XSL); 

# LOAD XML FILE 
$XML = new DOMDocument();
$XML->load('data.xml');

#PRINT 
print $xslt->transformToXML($XML); 
    ?>

谢谢,我正在使用它来转换我的 HTML 页面上的一些 XML 数据。

【问题讨论】:

    标签: javascript php xml xslt


    【解决方案1】:

    在 XML 序言之后将此行添加到 data.xml:

    <?xml-stylesheet type="text/xsl" href="example.xsl"?>
    

    如果您的浏览器支持 XSLT,它应该应用转换并显示转换后的结果。

    如果您想使用 JavaScript 执行此操作,请查看以下内容:

    【讨论】:

    • @Gordon 所以我实际上不需要任何 Javascript?我目前有一个 HTML 文件(花哨的页眉、页脚和所有文件),我希望内容部分显示位于同一目录中的那些 XML/XSL 文件。
    • 我已经完成了这个here,但 Chrome 似乎不允许本地文件这样做(这是我正在处理的)。
    • @stock 技术上没有。您可以从 xslt 组装整个输出,包括页眉、页脚和其他内容。但当然,它归结为浏览器支持。如果 Chrome 无法做到这一点,它就无法做到这一点。那么问题是:它可以通过 JavaScript 做到这一点吗?我对此表示怀疑,但我真的不知道。
    • @gordon 感谢您的建议。我正在尝试使用 dropbox 制作简单的留言板...将所有帖子数据存储在 XML 中是一种合理的方法吗?
    • @stock 取决于所需磁盘 i/o 的数量是否可以满足您打算服务的请求数量。
    【解决方案2】:

    使用 Gordon 建议的处理指令可能会为您完成这项工作。如果您需要更多控制,您可能需要查看Sarissa JavaScript library,它承诺以可靠的方式跨浏览器进行 XML 处理。

    【讨论】:

    • 我的第二个链接中也建议使用 Sarissa,但我从未使用过它。你知道它是否真的兑现了它的承诺吗?
    • 不,我不知道。大约两年前我看到有知识的人推荐它,但我自己从未尝试过使用它。
    • 我使用了 sarissa.js,它只适用于 FF4。 Chrome、IE9、Safari 和 Opera 没有显示。但是 sarissa 对于不懂 JS 的人来说非常容易使用。
    猜你喜欢
    • 1970-01-01
    • 2011-09-24
    • 2014-05-02
    • 1970-01-01
    • 2013-05-13
    • 1970-01-01
    • 2012-04-06
    • 2011-07-04
    • 1970-01-01
    相关资源
    最近更新 更多