2009-11-14 6 views
7

jQuery -

i

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

yüzden bu xml almak sonraki gibi XMLs üreten bir php var (bu iyi çalışır nasıl bir xml tüm etiketlerin üzerine döngü tüm xml etiketleri yinelemenize)

$.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? 

    });  

}}); 

cevap

3

Diğerlerinin yanı sıra children() işlevine bakmak isteyeceksiniz. İşlevler hakkında daha fazla bilgi için jQuery traversal documentation'a bakın. ) ...

+0

sayesinde yineleme kullanımı için iyi bir örnek oluşturmaktadır ama hala i = bunu ((ve üzücü im olamaz jquery yardımında var $ kids = $ (e.target) .children(); ama yine de .. bu prolly bana childs ile bazı nesne/dizi verir ama her çocuğun tagName nasıl alabilirim? bu çalışmadı $ (this) .children(). Each (function() {alert ($ (this) .tagName);}); // çalışmadı, bu tüm yöntemleri/att gösterir var childs = $ (this) .children(); \t (childs anahtarında) uyarısı (anahtar) için; – dedoz

+3

sonunda .. var $ childs = $ (this) .children(); var uzunluk = $ childs.length; (uzunluk--) uyarısı ($ childs [length] .tagName); çok teşekkür ederim – dedoz

11

Bu bağlantı xml aracılığıyla hızlı asnwer için

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