0

我需要 JavaScript 脚本来通过 XSLT 工作表将 XML 文件解析为 XHTML 代码。我的代码与 Firefox、Opera 和 Safari 兼容。

  function loadXMLFile(path) {
   var file = document.implementation.createDocument("", "", null);
   file.async = false;
   file.load(path);
   return file;
  }
  function parseXMLFile() {
   var xml = loadXMLFile("data.xml");
   var xsl = loadXMLFile("data.xsl");
   var xslt = new XSLTProcessor();
   xslt.importStylesheet(xsl);
   var xhtml = xslt.transformToFragment(xml, document);
   document.firstChild.replaceChild(xhtml, document.firstChild);
  }
  parseXMLFile();

它是 Internet Explorer 和 Chrome 的无效代码。我知道用于 IE 的 Microsfot.XMLDOM 库,但我不知道如何使用它。如何为 IE 和可选的 Chrome 编写好的代码?

4

2 回答 2

3

这是在 IE 中转换 XSLT 的示例

var xml = new ActiveXObject("Microsoft.XMLDOM"); 
var xslt = new ActiveXObject("MSXML2.FreeThreadedDOMDocument");
xml.load("data.xml");
xslt.load("data.xls");

var processor   = new ActiveXObject("Msxml2.XSLTemplate");
processor.stylesheet = xslt;

var objXSLTProc = processor.createProcessor();
objXSLTProc.input = xml;
objXSLTProc.transform();
var output  = objXSLTProc.output;

我在我的博客上写了一篇关于它的文章

于 2011-09-14T13:53:59.490 回答
0

这就是我正在使用的,它是跨浏览器兼容的,如果有任何问题,你也可以访问源代码。

http://johannburkard.de/software/xsltjs/

于 2011-03-07T15:21:08.807 回答