用js操作xml文件的时候,发现xml文件中有两条相同的节点,如:
<ROOT>
<DATA>
<NO>1<NO>
<INFO>
<NAME>123<NAME>
<AGE>20</AGE>
</INFO>
<NO>1<NO>
<INFO>
<NAME>234<NAME>
<AGE>30</AGE>
</INFO>
</DATA>
</ROOT>
想用hashmap来按照NO存取,却发现者两条节点,第二个被第一个覆盖了,请问这样的问题怎么解决啊!谢谢

解决方案 »

  1.   

    这个是原先xml文件里面有的,我不能修改xml文件啊,只是读出来做相应的操作啦
      

  2.   


    可以说的详细点吗,刚接触js对xml的操作,呵呵
      

  3.   

    JavaScript有hashmap?自己写的?
    这个是怎么存的问题了啊,和你解析没关系
      

  4.   

    <script language='javascript'>
    function createXml(str)

    if(document.all)

    var xmlDom=new ActiveXObject("Microsoft.XMLDOM") 
    xmlDom.loadXML(str) 
    return xmlDom; 

    else 
    return new DOMParser().parseFromString(str, "text/xml"); 

    var domxml = createXml('<?xml version="1.0" encoding="utf-8" ?><ROOT><DATA><NO>1</NO><INFO><NAME>123</NAME><AGE>20</AGE></INFO><NO>1</NO><INFO><NAME>234</NAME><AGE>30</AGE></INFO></DATA></ROOT>');var oNo = domxml.getElementsByTagName("NO");
    var oInfo = domxml.getElementsByTagName("INFO");for(var i=0;i< oNo.length;i++)
    {
     alert(oNo[i].firstChild.nodeValue);
     alert(oInfo[i].getElementsByTagName("NAME")[0].firstChild.nodeValue);
    }
    </script>
      

  5.   

    相同的KEY用haspmap来存取,不可能,你还是用其他的存取比较实际点