Загрузка XML-файла в массив JavaScript

Я знаю, что об этом спрашивали около миллиона раз, однако все сценарии, которые я нашел, либо адаптированы для человека, задающего вопрос, либо просто не работают вообще! В основном я ограничен использованием обычного JavaScript вместо библиотеки, такой как JQuery, в качестве универсального задания, однако хотел бы сохранить его для будущего использования, поскольку иногда JQuery не всегда подходит.

В любом случае переходим к делу. У меня есть файл XML с именем «profiles.xml", который содержит довольно простую структуру:

 <?xml version="1.0" encoding="iso-8859-1"?>
 <profiles>
 <profile id="1">
     <pic>images/profiles/person1/x.jpg</pic>
     <name>Joe Bloggs</name>
     <nickname>J-Bloggs</nickname>
     <age>21</age>
     <email>j.blogs@me.com</email>
     <role>Web Site Manager</role>
     <likes>
           <like1>Food</like1>
           <like2>Drink</like2>
           <like3>Computing</like3>
           <like4>Music</like4>
     </likes>
     <dislikes>
           <dislike1>Rude People</dislike1>
           <dislike2>Rude People</dislike2>
     </dislikes>
     <favwebsite>http://www.facebook.com</favwebsite>
 </profile>
</profiles>

Итак, в основном я хочу загружать каждый профиль в отдельный новый массив каждый раз, когда к нему нужно получить доступ, но в дополнение к этому я хотел бы сделать это на основе "id" значение атрибута. Возможно ли это? Если да, то как? У меня не осталось времени, чтобы изучать такие вещи, как XPATH и т. д. Это нужно сделать с помощью JavaScript, и это само по себе не позволяет использовать сценарии на стороне сервера.

Также как уже упоминалось, некоторые сценарии просто не работают, так как когда я пытаюсь поместить их в функции, появляется сообщение о том, что некоторые переменные не определены, даже если они были установлены, поэтому необходимо, чтобы сценарий передавал всю информацию из XML-файла в новый массив и сделать его доступным во всем HTML-документе

Пожалуйста, помогите, я потратил последние 4-5 недель, пытаясь решить это самостоятельно, а также много бессонных ночей в поисках в сети. для скриптов, которые могли бы дать мне подсказку!

Любая помощь очень ценится!Спасибо :- )

6
задан Mat 8 December 2012 в 13:01
поделиться