Синтаксический анализ XML с помощью jQuery

#jquery #xml

#jquery #xml

Вопрос:

У меня возникли проблемы с синтаксическим анализом некоторых XML. У меня нет контроля над структурой получаемого XML.

 <response>
  <variable name = "variable_name">variable value</variable>
  <variable name = "variable_name">variable value</variable>
</response>
  

Мне нужно получить имя_переменной и значение и записать их на веб-страницу. Однако количество переменных является динамическим.

Я уже создал функции для синтаксического анализа различных XML-ответов, но структура, которую я получаю, отличается для них.

Как я могу адаптировать следующий код для ответа?

 function parseSystem(xml){
     ControllerFound = true;
      $(xml).find("response").each(function()
       {
            $("#ProjectName").append($(this).find("projectName").text());
});
  

Приветствия

Майк

Ответ №1:

Вы можете попробовать с:

 function parseSystem(xml){
      $('variable', xml).each(function()
       {
            var var_instance = $(this);
            $("#container").append("Name: " var_instance.attr('name') "Value: "  var_instance.text());
       }
}
  

и наличие в html a container для добавления значений:

  <div id="container"></div>
  

Комментарии:

1. Вам нужно было бы создать селектор $(‘variable’, xml), и вам, вероятно, следует предотвратить повторное использование $ (this), записав его в переменную.

2. Будет ли это на самом деле записывать оба ответа на веб-страницу, хотя. Мне кажется (я новичок в Javascript / jquery), что значения будут записываться в #ProjectName дважды, что не является желаемой функциональностью.

3. @Michael Я думаю, что теперь ответ немного более понятен, вам нужен контейнер на веб-странице, куда вы можете добавлять значения.