你不能直接去 update <Item   ID=\"2\"> </Item> 吗?

解决方案 »

  1.   

    js中有swapNode方法可以满足你的要求,具体用法可以查查
      

  2.   


    <script type="text/javascript">
     var xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; 
     xml+="<Song>"; 
     xml+="<Item   ID=\"1\"> </Item>"; 
     xml+="<Item   ID=\"2\"> </Item>"; 
     xml+="<Item   ID=\"3\"> </Item>"; 
     xml+="<Item   ID=\"4\"> </Item>"; 
     xml+="</Song>";  var oDoc = new ActiveXObject("MSXML2.DOMDocument");
     oDoc.loadXML(xml);
     var items = oDoc.selectNodes("//Song/Item"); for(var i=0;i<items.length;i++)
     {
         if(items[i].getAttribute("ID")=="3")
         {
             var nodes = new Array();
             nodes.push(items[i].previousSibling);
             var pnode = items[i].parentNode;
             
             var flag = true;
             var item = items[i];
             while(flag)
             {
                 if(item.nextSibling!=null)
                 {
                    nodes.push(item.nextSibling);
                    item = item.nextSibling;
                 }
                 else
                 {
                     flag = false;
                 }
             }
             
             for(var i=0;i<nodes.length;i++)
             {
                pnode.removeChild(nodes[i]);
             }
             
             for(i=0;i<nodes.length;i++)
             {
                pnode.appendChild(nodes[i]);
             }
         }
     }
     window.alert(oDoc.xml);
    </script>