Jquery - перебрать все теги XML - PullRequest
7 голосов
/ 14 ноября 2009

Как перебрать все теги в XML

У меня есть php, который генерирует xmls, как следующий

<register>
  <name>peter</name>
  <age>12</age>
</register> 
<register>
  <name>mary</name>
  <age>20</age>
</register> 

так что я получаю этот XML (это прекрасно работает)

$.ajax({success: function(xml) {  

   $(xml).find('register').each (function() 
   { 
     alert($(this).find('name').text()) // works fine, shows peter then mary on the next loop of "each"



     // But if i dont know the tag names (name,age) for each register ?     

     // Something like

      $(this).nodes().each .... // 
 alert($(this).tagName);  // i wanna show "name" & "age", how can i get the tag names inside each register in my xml sample tree?

   });    

}});

Ответы [ 2 ]

11 голосов
/ 04 февраля 2012

Эта ссылка является хорошим примером использования итерации по xml

xml.find('result').find('permissionDetails').each(function(){
    $(this).children().each(function(){
        var tagName=this.tagName;
        var val=$(this).text();
        if(val==1){
            $('input:checkbox[name='+tagName+']').attr('checked',true);
        }
        else if(val==0){
            $('input:checkbox[name='+tagName+']').removeAttr('checked');
        }
    })
});

http://anasthecoder.blogspot.in/2012/02/looping-through-xml-with-jquery.html

3 голосов
/ 14 ноября 2009

Вы, возможно, захотите взглянуть на функцию children(). Обратитесь к документации jQuery для получения дополнительной информации о функциях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...