2017-04-12 7 views
1

私のxmlはこのように見えますが、アイテムを取得して<title><description>などのノードからデータを取得できます。これは、データjqueryまたはjavascriptを使ってxmlを読む

 var xmlparser = new DOMParser(); 
     var xmlData = xmlparser.parseFromString(data.text(), "text/xml"); 
     var items = xmlData.getElementsByTagName('item'); 
     for(var i = 0; i < items.length; i++){ 
      var title = items[i].getElementsByTagName("title")[0].childNodes[0].nodeValue; 
      var desc = items[i].getElementsByTagName("description")[0].childNodes[0].nodeValue; 
     } 
<pre xmlns:content="http://purl.org/rss/1.0/modules/content/" 
        xmlns:dcterms="http://purl.org/dc/terms/" 
        xmlns:media="http://search.yahoo.com/mrss/" version="2.0"> 
<Channel> 
    <item> 
    <title>List of records</title> 
    <description>reading xml</description. 
    <media:title xmlns:media="http://search.yahoo.com/mrss/"> 
    SinkorSwim Trailer 
    </media:title> 
    <title>Sink or Swim - Trailer</title> 
    <description>Jon Bowermaster's documentary</description>   
    <media:description xmlns:media="http://search.yahoo.com/mrss/"> 
    Jon Bowermaster's documentary on a learn-to-swim camp 
    </media:description> 
    <media:credit xmlns:media="http://search.yahoo.com/mrss/" role="Director" 
          scheme="urn:ebu"> 
    Jon Bowermaster 
    </media:credit> 
    <media:status xmlns:media="http://search.yahoo.com/mrss/" state="active"/> 
    <media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" 
    type="landscape" url="http://snagfilms-video.jpg"/> 
    <media:player xmlns:media="http://search.yahoo.com/mrss/" height="323" 
    url="http://embed.snagfilms.com/embed/player?filmId=00000158-b20c-d8f9- 
    affd-b32ce8700000" width="500"/> 
    </item> 
    <item></item> 
    <item></item> 
</channel> 
</pre> 

答えて

0

mediamedia:titleでXML名前空間接頭辞を表しを取得することができていますどのようにどのように<media:thumbnail>

<media:title><media:credit>から値を取得します。名前空間接頭辞は、名前空間のショートカットです。名前空間は、xmlns:media属性を持つドキュメントのどこかで定義する必要があります。あなたが名前空間名ではなく接頭辞を渡す必要が

console.log(xml.getElementsByTagNameNS('xmlns:media="http://search.yahoo.com/mrss/"', 'title')); 

最初のパラメータ: その後、title要素を照会するために、名前空間を意識getElementsByTagNameNS()機能を使用することができます。

関連する問題