搂主,谢谢,您引导了我学会了怎样创建table 的DOM对象

解决方案 »

  1.   


    这里是利用XMLHttpRequest对象通过网络读取服务器上的xml文件的框架,希望能对您有帮助。
    <html>
    <head>
    <script type="text/javascript">
    var xmlhttp;function loadXMLDoc(url)
    {
    xmlhttp=null;
    if (window.XMLHttpRequest)
      {// code for IE7, Firefox, Mozilla, etc.
      xmlhttp=new XMLHttpRequest();
      }
    else if (window.ActiveXObject)
      {// code for IE5, IE6
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    if (xmlhttp!=null)
      {
      xmlhttp.onreadystatechange=onResponse;
      xmlhttp.open("GET",url,true);
      xmlhttp.send(null);
      }
    else
      {
      alert("Your browser does not support XMLHTTP.");
      }
    }function onResponse()
    {
    if(xmlhttp.readyState!=4) return;
    if(xmlhttp.status!=200)
      {
      alert("Problem retrieving XML data");
      return;
      }
    //这里再加入你的对xml文件的操作}</script>
    </head><body>
    <div id="copy">
    <button onclick="loadXMLDoc('cd.xml')">Get CD info</button><!-- 'cd.xml'是要读取的xml文件 -->
    </div>
    </body>
    </html>
      

  2.   

    谢谢3楼了,就是不知道传回的xml怎样在ie和firefox下都能正确显示出来
      

  3.   

    当然是通过dom对象的操作咯,
      

  4.   

    我这里就为您上传一个例子吧:<html>
    <head>
    <script type="text/javascript">
    var xmlhttp;function loadXMLDoc(url)
    {
    xmlhttp=null;
    if (window.XMLHttpRequest)
      {// code for IE7, Firefox, Mozilla, etc.
      xmlhttp=new XMLHttpRequest();
      }
    else if (window.ActiveXObject)
      {// code for IE5, IE6
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    if (xmlhttp!=null)
      {
      xmlhttp.onreadystatechange=onResponse;
      xmlhttp.open("GET",url,true);
      xmlhttp.send(null);
      }
    else
      {
      alert("Your browser does not support XMLHTTP.");
      }
    }function onResponse()
    {
    if(xmlhttp.readyState!=4) return;
    if(xmlhttp.status!=200)
      {
      alert("Problem retrieving XML data");
      return;
      }txt="<table border='1'>";
    x=xmlhttp.responseXML.documentElement.getElementsByTagName("CD");
    for (i=0;i<x.length;i++)
      {
      txt=txt + "<tr>";
      xx=x[i].getElementsByTagName("TITLE");
        {
        try
          {
          txt=txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
          }
        catch (er)
          {
          txt=txt + "<td> </td>";
          }
        }
      xx=x[i].getElementsByTagName("ARTIST");
        {
        try
          {
          txt=txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
          }
        catch (er)
          {
          txt=txt + "<td> </td>";
          }
        }
      txt=txt + "</tr>";
      }
    txt=txt + "</table>";
    document.getElementById('copy').innerHTML=txt;
    }</script>
    </head><body>
    <div id="copy">
    <button onclick="loadXMLDoc('cd_catalog.xml')">Get CD info</button>
    </div>
    </body>
    </html>
    代码中的xml文件'cd_catalog.xml'内容为:
    <?xml version="1.0" ?> 
    - <!--  Edited by XMLSpy® 
      --> 
    - <CATALOG>
    - <CD>
      <TITLE>Empire Burlesque</TITLE> 
      <ARTIST>Bob Dylan</ARTIST> 
      <COUNTRY>USA</COUNTRY> 
      <COMPANY>Columbia</COMPANY> 
      <PRICE>10.90</PRICE> 
      <YEAR>1985</YEAR> 
      </CD>
    - <CD>
      <TITLE>Hide your heart</TITLE> 
      <ARTIST>Bonnie Tyler</ARTIST> 
      <COUNTRY>UK</COUNTRY> 
      <COMPANY>CBS Records</COMPANY> 
      <PRICE>9.90</PRICE> 
      <YEAR>1988</YEAR> 
      </CD>
    - <CD>
      <TITLE>Greatest Hits</TITLE> 
      <ARTIST>Dolly Parton</ARTIST> 
      <COUNTRY>USA</COUNTRY> 
      <COMPANY>RCA</COMPANY> 
      <PRICE>9.90</PRICE> 
      <YEAR>1982</YEAR> 
      </CD>
    </CATALOG>
      

  5.   

    稍等兄弟,我试试ie和firefox下是否都能正确显示
      

  6.   

     ff下面去字节点的值是 x.innerHTML=xmlDocumentElement.childNodes[i].childNodes[0].Context; 呵呵,我以前在ff做过读取xml,但是两个兼容的还没试过