2011-04-21 13 views
16

मैं पहले ही एक्सएमएल सफलतापूर्वक पार्स कर रहा हूं लेकिन मैं बच्चों की विशेषता प्राप्त करने में फंस गया हूं।अकेले jQuery के साथ एक्सएमएल विशेषताओं का विश्लेषण कैसे करें?

एक्सएमएल उदाहरण:

<entries> 
    <entry> 
     <media:thumbnail url="blah" /> 
    </entry> 
</entries> 

जावास्क्रिप्ट/jQuery:

$.get('data.xml', function(d){ 
    $(d).find('entry').each(function(){ 
     var $entry = $(this); 
     var pic = $entry.find('media:thumbnail').attr('url'); 
    }) 
}); 

जावास्क्रिप्ट एक विशेषता पाने के लिए मेरे लिए काम नहीं करता है। समस्या क्या है?

+1

अपने js देखें सही है। समस्या कुछ और होना है। – Anurag

+0

यदि आप 'console.log (d) का उपयोग करते हैं, तो आप क्या देखते हैं? –

+0

मेरे लिए ठीक काम करता है। क्या आपकी प्रतिक्रिया सामग्री-प्रकार सही है? –

उत्तर

21

आह, नामस्थान जानवर की एक अलग तरह की हैं, यह अपने मूल पोस्ट में नहीं था। आपको अपने चयनकर्ता में : से बचना होगा।

var pic = $entry.find('media\\:thumbnail').attr('url'); 

http://jsfiddle.net/JSrJe/1/

भी jQuery XML parsing with namespaces

+0

अब मैं यही बात कर रहा हूं, धन्यवाद एक टन !! – Ryan

1

इस बाहर की कोशिश

$.ajax({ 
    type: "GET", 
    url: 'data.xml, 
    dataType: "xml", 
    success: function(xml) { 
     $(xml).find('entry').each(function(){ 
      var $entry = $(this); 
      var pic = $entry.find('picture').attr('url'); 
      alert(pic); 
     }) 
    }, 
    error: function(xhr, status, error) { 
     if (xhr.status != 404) {alert(error);} else {alert("404 xml not found");} 
    } 
}) 
0
$.get('data.xml', function(d) { 
    $(d).find('entry').each(function() { 
     var $entry = $(this); 
     var pic = $e`enter code here`ntry.find('media\\:thumbnail, thumbnail').attr('url'); 
    }) 
}); 
संबंधित मुद्दे