对xsl的GET请求适用于Firefox / Opera / GoogleChrome / Safari /甚至IE9,但不适用于IE 8或IE10

时间:2013-04-23 15:53:11

标签: javascript xslt html internet-explorer-8

我试图在GET请求中通过JS / XSLT填充div。请参阅以下代码:

function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",dname,false);
xhttp.send("");
return xhttp.responseXML;
}
    function displayResult()
    {
    xml=loadXMLDoc("Folder/data.xml");
    xsl=loadXMLDoc("Folder/data.xsl");
    // code for IE
    if (window.ActiveXObject)
      {
      ex=xml.transformNode(xsl);
      document.getElementById("reps").innerHTML=ex;
      }
    // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation && document.implementation.createDocument)
      {
      xsltProcessor=new XSLTProcessor();
      xsltProcessor.importStylesheet(xsl);
      resultDocument = xsltProcessor.transformToFragment(xml,document);
      document.getElementById("reps").appendChild(resultDocument);
      }
    }

这在Firefox / Opera / Chrome / Safari / IE9中运行良好,但在IExplorer 8& 10中则不行

当我检查它在Explorer 8&amp;中的显示方式时10,它完全忽略了代码,就好像它不存在一样,如此:<div id="reps" /></div>但是在所有其他浏览器中,整个列表/表都填充在这个div里面就好了

现在,当我在资源管理器中单独检查xslt时,它工作正常,列表就在那里。因此,这似乎是一个问题,这个JS将它拉入IE / S中的div

有什么建议吗?

提前感谢一大堆!

0 个答案:

没有答案