- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想美化一些 XML,我发现了以下代码( in this answer , JSFiddle )。我是这样修改的:
const xsltDoc = new DOMParser().parseFromString([
// describes how we want to modify the XML - indent everything
'<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">',
' <xsl:output omit-xml-declaration="yes" indent="yes"/>',
' <xsl:template match="node()|@*">',
' <xsl:copy><xsl:apply-templates select="node()|@*"/></xsl:copy>',
' </xsl:template>',
'</xsl:stylesheet>',
].join('\n'), 'application/xml');
function prettifyXml(sourceXml) {
var xmlDoc = new DOMParser().parseFromString(sourceXml, 'application/xml');
var xsltProcessor = new XSLTProcessor();
// Error happens here:
xsltProcessor.importStylesheet(xsltDoc);
var resultDoc = xsltProcessor.transformToDocument(xmlDoc);
var resultXml = new XMLSerializer().serializeToString(resultDoc);
return resultXml;
};
我在运行代码时遇到错误,但错误没有任何消息。在 Firefox 控制台中看起来像这样:
这是我在调试器中看到的:
原始答案中的 Fiddle 中也确实发生了错误。我想知道这是什么类型的错误以及如何修复它。
我加入了 Firefox 标签,因为我认为这不是正常的浏览器行为。我的版本是 61.0.2(64 位)。
最佳答案
就 XSLT 而言,您需要 version
样式表的根元素上的属性,所以尝试 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
.这似乎修复了 importStylesheet
上的错误打电话,见https://jsfiddle.net/sgeryvyu/361/ .
另一方面,众所周知,Firefox/Mozilla 的 XSLT 处理器可以执行树到树的转换,因此 transformToDocument
和 Mozilla 你不会得到 xsl:output
的任何序列化选项应用,这意味着尝试通过 XSLT 推送您的 DOM 树只会给您另一个没有所需缩进的 DOM 树。
关于javascript - 未定义 : undefined error when calling XSLTProcessor. 原型(prototype).importStylesheet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51989864/
我有这个 XSLT img { width: 100% } Ci sono elemen
这个问题在这里已经有了答案: Fatal error: Class 'XSLTProcessor' not found (2 个答案) 关闭 8 年前。 我正在尝试使用 XSLT 将 XML 文件转
这是我的问题:我正在尝试使用 XSLTProcessor 将 xml 转换为 html。我已经阅读了它的使用,但我有以下问题 - transformToXML(xml_file) 函数要求 xml_f
我想得到转换错误。 这是我的代码: var xsltProcessor = new XSLTProcessor(); xsltProcessor.importStylesheet(xsl); var
我有一个加载 500 mb xml 文件并使用 xsl 模板解析该文件的页面。解析器在我的本地环境中完美运行。我正在使用 WAMP。 在网络服务器上。 警告:DOMDocument::load() [
出于某种原因,我无法让 XSLTProcessor() 一直工作。 这是我的 JS: ... xsltProcessor = new XSLTProcessor(); xsltProcessor.im
我尝试复制示例 Transforming XML to XHTML in the Browser ,但我在控制台中的 xsltProcessor.importStylesheet(xsl) 行出现错误
此代码:: xslProcessor = new XSLTProcessor(); xslProcessor.importStylesheet(xsl); result = xslProcessor
我的任务是修复一个旧网站,使其与现代浏览器兼容。不过,有些 3rd 方控件让我有些不舒服,而且我不会付费来获取这些控件的最新版本。这些旧网格之一有一些内置的 javascript,在处理 XSLTPr
我在 typescript 代码中使用 XSLTProcessor 时遇到了一些问题。 transformToDocument 总是在没有明显原因的情况下返回 null。这是我的代码: private
我正在更新我的脚本以将我们的代码从 Ubuntu 12.04 (PHP 5.3.10) 移动到 Ubuntu 14.04 (PHP 5.5.9),但是 $result = $proc->transfo
我已经成功地使用 XSLT 转换 XML 文档,我正在从 JavaScript 启动该过程。由于 XML 输入相当大,我的计划是在 webworker 中启动 XSLT 转换。 我在这一行得到的错误
我正在尝试将 XML 转换为 XHTML。我在客户端(Angular)使用了 XSLTProcessor,它工作正常。现在我尝试在 Node JS 中使用相同的代码,但它不起作用,并且我收到错误消息,
错误: Warning: XSLTProcessor::importStylesheet() [xsltprocessor.importstylesheet]: Undefined variable
我正在使用 XAMPP 服务器 1.7.7 打开 php 文件时,我收到错误提示 fatal error :找不到类“XSLTProcessor” 最佳答案 安装 XSL 扩展以获取该类。这可能就像在
本文整理了Java中mx4j.tools.adaptor.http.XSLTProcessor.setUseCache()方法的一些代码示例,展示了XSLTProcessor.setUseCache(
本文整理了Java中mx4j.tools.adaptor.http.XSLTProcessor.()方法的一些代码示例,展示了XSLTProcessor.()的具体用法。这些代码示例主要来源于Gith
本文整理了Java中mx4j.tools.adaptor.http.XSLTProcessor.setPathInJar()方法的一些代码示例,展示了XSLTProcessor.setPathInJa
我有一个 XSL 文件。 我有一个带有 XSLTProcessor 的 PHP 文件,名为 $bob . 我想向我的 xsl 转换发送一些参数。 所以,我把它写在我的 PHP 文件中;例如: $bob
当尝试执行以下操作时 $xsl = new XSLTProcessor(); 我收到此错误 Fatal error: Class 'XSLTProcessor' not found in 我见过thi
我是一名优秀的程序员,十分优秀!