以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 HTML/XHTML/Ajax/Web 2.0/Web 3.0 』  (http://bbs.xml.org.cn/list.asp?boardid=22)
----  [原创]救急!在FF中使用JavaScript 调用XML的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=22&rootid=&id=72315)


--  作者:xuyin_849
--  发布时间:2/26/2009 9:05:00 AM

--  [原创]救急!在FF中使用JavaScript 调用XML的问题
这样一段代码无论使用IIS,或是APACHE发布后,在IE中都运行正确,但到FIREFOX里就不行了,难道FF解析XML有提,苦恼中!
<body>
<div id="xmlTable" ></div>
<script type="text/javascript">
var docObj;
window.onload=getXML;
function getXML(){
 if(typeof document.implementation.createDocument !="undefined")
  {
   docObj = document.implementation.createDocument("","",null);
  docObj.onload = displayData;
  }
 else if(window.ActiveXObject)
  {
    docObj=new ActiveXObject("Microsoft.XMLDOM");
    docObj.onreadystatechange = function (){if (docObj.readyState == 4) displayData()};
  }
 docObj.load("books.xml");
}

function displayData(){
 var xmlEl=docObj.getElementsByTagName("book");
 var table = document.createElement("table");
  table.border = "1";
  var tbody = document.createElement("tbody");
  table.appendChild(tbody);
 var tr = document.createElement("tr");
  tbody.appendChild(tr);
 for(var i=0;i<xmlEl[0].childNodes.length;i++)
  {
    if (xmlEl[0].childNodes[i].nodeType ==1){
    var td = document.createElement("td");
    var xmlData = document.createTextNode(xmlEl[0].childNodes[i].nodeName);
    td.appendChild(xmlData);
    tr.appendChild(td);
    }
  
  }
 for(var count =0 ;count<xmlEl.length;count++){
  var tr = document.createElement("tr");
  tbody.appendChild(tr);
  for(var j=0;j<xmlEl[count].childNodes.length;j++)
   { if(xmlEl[count].childNodes[j].nodeType != 1)
    continue;
    var td = document.createElement("td");
    var xmlData = document.createTextNode(xmlEl[count].childNodes[j].firstChild.nodeValue);
    td.appendChild(xmlData);
    tr.appendChild(td);
   }
 }
 document.body.appendChild(table);
}

</script>

</body>
</html>


--  作者:Qr
--  发布时间:2/26/2009 1:11:00 PM

--  
 if (document.implementation && document.implementation.createDocument) {
  var xmldoc = document.implementation.createDocument("","",null);
  xmldoc.onload = function() {handler(xmldoc,url);}
  xmldoc.load(url);
 }
--  作者:hexun831012
--  发布时间:2/26/2009 8:18:00 PM

--  
不知道说什么好,看来楼主对浏览器,服务器和DOM不怎么分得清楚

W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms