well-formed吧?我用的是XMLWriter,没有说不能通过啊...不过我真的懂得不多,呵呵

解决方案 »

  1.   

    var oDom = new ActiveXObject("Microsoft.XMLDOM")
    var oRoot = oDOM.loadXML("FILENAME").documentElement;
    然后用childNoes,nodeValue就行了
    具体请参考msdn
      

  2.   

    <html>
    <body>
    <xml id=xml>
    <PART id="x1">
      <ITEM id="y1">
        <CAPTION>a1</CAPTION>                             
        <LINK>a2</LINK>                                 
        <IMGSRC>a3</IMGSRC>                            
        <HINT>a4</HINT>
      </ITEM>
      <ITEM id="y2">
        <CAPTION>b1</CAPTION>                             
        <LINK>b2</LINK>                                 
        <IMGSRC>b3</IMGSRC>                            
        <HINT>b4</HINT>
      </ITEM>
    </PART>
    </xml>
    <script>
    function WalkTree(node){
      if(node.nodeType == 3)// text
        alert("name=" + node.parentNode.nodeName + " ; Text=: " + node.text);
      else  if(node.hasChildNodes()){
        var c = node.firstChild;
        while(c != null){
          WalkTree(c);
          c = c.nextSibling;
         }
      }
    }
    WalkTree(xml.documentElement);
    </script>
    </body>
    </html>
      

  3.   

    正确,你已经会了
    <html>
    <body>
    <xml id=xml>
    <PART id="x1">
      <ITEM id="y1">
        <CAPTION>a1</CAPTION>                             
        <LINK>a2</LINK>                                 
        <IMGSRC>a3</IMGSRC>                            
        <HINT>a4</HINT>
      </ITEM>
      <ITEM id="y2">
        <CAPTION>b1</CAPTION>                             
        <LINK>b2</LINK>                                 
        <IMGSRC>b3</IMGSRC>                            
        <HINT>b4</HINT>
      </ITEM>
    </PART>
    </xml>
    <script>
    node = xml.selectNodes("//*");
    for(i=0;i<node.length;i++) {
      document.write(node[i].nodeName+"<br>");
    }document.write(xml.getElementsByTagName("PART").length+"<br>");node = xml.getElementsByTagName("LINK");
    for(i=0;i<node.length;i++)
      document.write(node.item(i).text +"<br>");
    </script>