2014-02-01 10 views
0

Я пытаюсь извлечь содержимое из запроса ajax. Я могу извлечь некоторую информацию, но у меня проблемы с другими.Извлечение содержимого из запроса ajax

Ниже приведен пример некоторых из запрашиваемой информации:

<item> 
<title>Title</title> 
<pubDate>Sat, 01 Feb 2014 12:12:12 GMT</pubDate> 
<description>Description</description> 
<enclosure url="http://www.podtrac.com/pts/redirect.mp3/traffic.libsyn.com/example.mp3" type="audio/mpeg" /> 
<itunes:duration>1:35:25</itunes:duration> 
</item> 

желаемая выход:

Title 
Sat, 01 Feb 2014 12:12:12 GMT 
Description 
1:35:25 
http://www.podtrac.com/pts/redirect.mp3/traffic.libsyn.com/example.mp3 

До сих пор я был в состоянии извлечь название, PubDate и описание. Я не увенчался успехом. Я пробовал разные методы, но был неприемлем. Надеюсь, вы можете помочь мне найти решение и поблагодарить вас за ваше время.

Ниже мой код:

$.ajax({ 
type: "GET", 
url: "php/podcast.php", 
dataType: "xml", 
success: function(xml){ 
$(xml).find('item').each(function(){ 
var sTitle = $(this).find('title').text(); 
var sPubDate = $(this).children('pubDate').text(); 
var sDescription = $(this).find('description').text(); 
var sDuration = $(this).find('itunes:duration').text(); 
var sURL = $(this).text().match('podtrac'); 
$('#rtpodcast').append('<div id="podcast"><div id="podTitle">'+ sTitle +'</div><div  id="podPubDate">'+ sPubDate +'</div><div id="podDescription">'+ sDescription +'</div><div id="podDuration">'+ sDuration +'</div><div id="podURL">'+ sURL +'</div></div>'); 
}); 
}, 
error: function() { 
alert("An error occurred while processing XML file."); 
} 
}); 
+0

Вы можете посмотреть этот пост для разбора тега http://stackoverflow.com/questions/853740/jquery-xml-parsing-with-namespaces –

+0

Благодарим за помощь – Sabre

ответ

2

Это будет соответствовать тексту между тегами и не атрибутами.

пример (Fiddle):

var xml = $.parseXML('<a id="text_id">text</a>'); 
alert($(xml).find('a').text()); // this will alert "text" 
alert($(xml).find('a').attr("id")); //this will alert "text_id" 

Для retrive URL вам нужно заменить этот

var sURL = $(this).text().match('podtrac'); 

с

var sURL = $(this).find("enclosure").attr("url"); 

Для тега с пространством имен, попытайтесь избежать двоеточие с // в ваш селектор

+0

Спасибо за помощь твоя помощь отлично работала – Sabre

Смежные вопросы