日期:2014-05-16  浏览次数:20349 次

jquery读取xml比较js读取xml 比比就知道
test.xml:
<?xml version="1.0" encoding="utf-8" ?>
<NewInfo>
<cat id="1">
    <title>猫(māo)</title>
    <content>【词性】 动词&#60;br/&#62;【解释】 一个物体的形象倒着映射到另一个物体上。&#60;br/&#62;【例句】 堤岸的杨柳倒映在平静的湖面上</content>
    <image>../../images/flip_pic.png</image>
    <audio>../../audio/yi4.mp3</audio>

</cat>
<dog id="2">
    <title>狗(māo)</title>
    <content>【词性】 动词&#60;br/&#62;【解释】 一个物体的形象倒着映射到另一个物体上。&#60;br/&#62;【例句】 堤岸的杨柳倒映在平静的湖面上</content>
    <image>../../images/flip_pic.png</image>
    <audio>../../audio/yi4.mp3</audio>
</dog>
</NewInfo>

注意:以下有个word字段,是传入的参数。如word="cat";
js读取xml:
 var dom;			
        if (window.ActiveXObject){  
               dom = new ActiveXObject("Microsoft.XMLDOM");  
               dom.async=false;  
               dom.load("test.xml");  
            }else if (document.implementation &&     document.implementation.createDocument){   
                var xmlhttp = new window.XMLHttpRequest();  
                xmlhttp.open("GET", "test.xml", false);  
                xmlhttp.send(null);  
                dom = xmlhttp.responseXML;
                   }else{  
                     dom = null;  
                   }   	                         
            
            if(dom){
                var node = dom.getElementsByTagName(word);
                for(var i=0;i<node.length;i++)
                {
		 var id=node[i].getAttribute('id')-1;
                 var title = dom.getElementsByTagName("title")[id].childNodes[0].nodeValue;
		 var audio=dom.getElementsByTagName("audio")[id].childNodes[0].nodeValue;
                }
                
            }else{
                window.alert("dom对象为空,失败了!");
                return;
            }

jquery读取xml:
$.get('test.xml',function (data){
             $(data).find(word).each(function(){
			       var id=$(this).attr("id");
			       var title=$(this).find('title').text();
			       var audio=$(this).find('audio').text();
			  });
          });