2013-06-17 3 views
1

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

 var queryObj = new Object(); 
     var querystring = location.search.replace('?', ''); 
     var vars = querystring.split("&"); 
     for (var i = 0; i < vars.length; i++) 
     { 
      var pair = vars[i].split('='); 
      var key = pair[0]; 
      var value = pair[1]; 
      var value = decodeURI(value); 
      queryObj[key] = value; 

     } 

     if(queryObj["activity"] != "" && queryObj["phase"] != "") 
     { 
      $("#TaskTitle").html(queryObj['phase']+": "+queryObj['activity']); 
     } 
+0

, если ваш XML действителен xml, вы можете использовать '$ .parseXML (string)' вместо того, чтобы самостоятельно его разбирать. – krishgopinath

+0

@ user2493628 Здесь размещается соответствующий XML – Praveen

+0

<Деятельность Id = "ea1eb36c-f176-40cc-8b06-400ed2af4ff3" Название = "Понимание стратегий и приоритетов клиентов" Описание = "Сообщение: \ nПонимание заинтересованных сторон является одним из важнейших факторов успеха для любого взаимодействия с корпоративной стратегией. »> <Идентификатор задачи =" 55330fd0-789a-4db4-8625-4125be63107c "Имя =" Захват бизнес-драйверов, цели и преимущества "Описание =" Работа с ключевыми заинтересованными сторонами для определения приоритетных проблем . Оценка \ б Преимущества "> – user2493628

ответ

3

Рассмотрим У меня есть XML, как это:

<?xml version="1.0"?> 
<catalog> 
    <book id="bk101"> 
     <author>Gambardella, Matthew</author> 
     <title>XML Developer's Guide</title> 
     <genre>Computer</genre> 
     <price>44.95</price> 
     <publish_date>2000-10-01</publish_date> 
     <description>An in-depth look at creating applications 
     with XML.</description> 
    </book> 
    <book id="bk102"> 
     <author>Ralls, Kim</author> 
     <title>Midnight Rain</title> 
     <genre>Fantasy</genre> 
     <price>5.95</price> 
     <publish_date>2000-12-16</publish_date> 
     <description>A former architect battles corporate zombies, 
     an evil sorceress, and her own childhood to become queen 
     of the world.</description> 
    </book> ..so on 
</catalog> 

Я бы хранить это в строку, а затем запустить parseXML() над ним, который я бы запихать в переменную так:

var xmlDoc= $.parseXML(myXmlString) 

Теперь я могу использовать эту переменную xmlDoc как объект DOM и проходить через нее, если необходимо, передав ее $() в качестве аргумента.

$(xmlDoc) 

Теперь вы можете прочитать на find(), closest() и т.д., и узнать до того, как вы пройти в JQuery.

Например, если я хочу, чтобы автор книги разработчиков XML руководства, который находится в разделе <book> с идентификатором #bk101, я бы это сделать:

$(xmlDoc).find("#bk101").find("author") 

      //OR 

$(xmlDoc).find("#bk101 author") 

      //OR 

$("#bk101", xmlDoc).find("author") 

Вот и все. Вот демонстрационная версия: http://jsfiddle.net/hungerpain/N3mYa/

+2

+1 N лед описание. – Praveen

+0

Большое вам спасибо. Это помогло! – user2493628