Мне пришлось исправить этот вопрос, потому что я забыл фрагмент кода, который нарушает вещи. Я только хочу посмотреть на изображения для определенной церкви.Получение атрибута дочерних узлов xml в jQuery
XML файл:
<churches>
<church>
<data-name>germanevangelical</data-name>
<name>German Evangelical</name>
<address>501 Elm St.</address>
<opened>1887</opened>
<neighborhood>East</neighborhood>
<region>East</region>
<architecture>Gothic</architecture>
<denomination>Evangelical Lutheran</denomination>
<closed>2006</closed>
<image caption="Mary Smith">image_1_forweb.jpg</image>
<image caption="Mary Smith">image_2_forweb.jpg</image>
<image caption="Mary Smith">image_3_forweb.jpg</image>
</church>
... (more church nodes)
</churches>
Я хочу, чтобы получить доступ к подписи изображений с JQuery.
Вот мой код, но это возвращение «не определено» для подписи:
var cName = 'germanevangelical';
$.ajax({
type: "GET",
url: "churchdata.xml",
dataType: "xml",
success: function(xml) {
var name = $(xml).find("data-name"); //get church names from xml file
$(name).each(function(id, item) {
if ($(item).text() == cName) { //find the right church in the xml file
$(item).parent().find("image").each(function(id, node) {
console.log('id: ' + $(node).attr('caption'));//undefined
})
}//end if right church in xml file
})
}
});
Может кто-нибудь увидеть, что я делаю неправильно, пожалуйста?
ли 'xml' уже разобрано как' # document' где 'dataType' устанавливается в' xml'? Также отсутствует закрытие ')' at '.each()' – guest271314
ОК, я идиот. У меня не было атрибутов, написанных для церкви, которую я продолжал щелкать. У меня были атрибуты для церкви над ней. Ошибка человека не может быть недооценена .... – LauraNMS