如何在IE中正确处理XSL转换并将结果作为文档片段获取

时间:2011-03-22 14:27:05

标签: javascript xml internet-explorer xslt

我需要使用JavaScript在浏览器中进行XSL转换。

当我在现代浏览器中执行此操作时,例如FF或Chrome,我可以执行以下操作:

     var proc = new XSLTProcessor();
     proc.importStylesheet(xslDoc);
     return proc.transformToFragment(xmlDoc, targetDocument);

但是使用IE我只能转换为新文档

     var newDoc = new ActiveXObject("Microsoft.XMLDOM");
     xmlDoc.transformNodeToObject(xslDoc, newDoc);
     return newDoc;

...或转换为文字

     return xmlDoc.transformNode(xslDoc);

转换为文本导致巨大的性能问题(我需要将结果附加到我当前文档的DOM树中),转换为新文档,最终导致采用/ importNode。

是否有更好的方法在IE中进行XSL转换,并将结果附加到DOM树?

1 个答案:

答案 0 :(得分:0)

只是一个想法...为什么不将此行添加到您的xml文件中:

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

如下所示:http://www.w3schools.com/xsl/xsl_transformation.asp

这会让浏览器进行转换,然后你会在你要解析的iframe中加载这个xml吗?

<iframe src="your.xml" onload="parse_it()" ></iframe>