2013-03-20 4 views
0

У меня есть ID видео Youtube, и я хочу получить название видео для этого идентификатора. Я получил XML-канал, который содержит заголовок, но я не уверен, как его извлечь.JavaScript - Чтение XML-документа

Sample of XML output

$.ajax({ 
    url: 'http://gdata.youtube.com/feeds/api/videos/' + videoId 
}).done(function (data) { 
    console.log(data.title); //does not work 
    console.log(data.entry.title); //does not work 
}); 
+0

Вы ищете 'data.getElementsByTagName (" title ") [0]'? Это XML! – Bergi

+0

@Bergi Я заметил, когда я пошел 'console.log (data.getElementsByTagName (" title ") [0])', вывод '' title type = "text"> TITLE OF VIDEO '. Можно ли удалить тег заголовка? – Jon

+0

@Bergi Почему я не могу 'data.title' с XML? Где я буду использовать 'data.title'? – Jon

ответ

4

JQuery обыкновение автоматически конвертировать XML в JSON для вас. Просто используйте jQuery для обработки XML-документа как дерева DOM.

$(function() { 
    $.ajax({ 
     url: 'http://gdata.youtube.com/feeds/api/videos/vnUwxDhE1kU', 
     dataType: 'xml' 
    }).done(function (data) { 
     console.log('done', $(data).find('entry > title').text()); 
    }); 
}); 
+0

Отлично, что сработало. Спасибо :) – Jon

0

Что вы получаете в аргументе данных является XML-документом. JQuery также поможет вам получить нужную вам информацию более простым способом. Следующий код работает:

$.ajax({ 
    url: 'http://gdata.youtube.com/feeds/api/videos/vnUwxDhE1kU' 
}).done(function (data) { 
    var $xml = $(data); 
    console.log($xml.find('title').text()); 
}); 

Смотрите эту ссылку: http://tech.pro/tutorial/877/xml-parsing-with-jquery для более подробной информации.

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